實驗一 思路

RT_Enzyme發表於2020-10-09

在主佈局檔案中加入跳轉用的tab,放到佈局檔案的最後

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:layout_alignParentBottom="true">
    <Button
        android:id="@+id/bt_1"
        android:layout_width="0dp"
        android:layout_height="60dp"
        android:layout_gravity="bottom"
        android:layout_weight="1"
        android:background="@drawable/bg_btn3"
        android:text="主頁面"
        android:textColor="@color/colorBlack">
    </Button>

    <Button
        android:id="@+id/bt_2"
        android:layout_width="0dp"
        android:layout_height="60dp"
        android:layout_weight="1"
        android:text="設定"
        android:layout_gravity="bottom"
        android:background="@drawable/bg_btn3"
        android:layout_toLeftOf="@id/bt_1"
        android:textColor="@color/colorBlack">
    </Button>
</LinearLayout>

其中樣式xml bg_btn3檔案內容

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="false">
        <shape>
            <solid android:color="#FFFFFF"></solid>
        </shape>
    </item>
    <item android:state_pressed="true">
        <shape>
            <solid android:color="@color/colorGray"></solid>
        </shape>
    </item>
</selector>

values/color.xml檔案

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="false">
        <shape>
            <solid android:color="#FFFFFF"></solid>
        </shape>
    </item>
    <item android:state_pressed="true">
        <shape>
            <solid android:color="@color/colorGray"></solid>
        </shape>
    </item>
</selector>

效果:
在這裡插入圖片描述
在MainActivity.java中,新增監聽函式,其中Setup.java是要跳轉的設定頁面

Button btn1;
@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		context = this;
		btn1 = (Button) findViewById(R.id.bt_2);

		// 事件監聽
		initEvent();

		btn1.setOnClickListener(new View.OnClickListener() {
			@Override
			public void onClick(View v) {
				//跳轉到打卡頁面
				Intent i2=new Intent(MainActivity.this,Setup.class);
				startActivity(i2);
			}
		});
	}

新建設定頁面的activity
在這裡插入圖片描述
並且把生成的類中繼承的類名換成Activity.
在新生成的佈局檔案中,將主頁面的那些配置的editText之類的放到這個佈局檔案中。並且MainActivity.java基本上都移植到新生成的類中。

功能實現的思路:
大體的思路是在設定頁面中輸入值,點選修改按鈕後,會修改Const.java中的靜態變數值,然後在主頁面點選連線按鈕時,直接呼叫const.java中的值。
所以在新建的類中的initEvent方法中linkage_sw和connect_tb的監聽作用是將前端輸入的值放入const中。
mainactivity中initEvent方法是呼叫const值進行連線。

相關文章