●實作練習
=>首頁有intent button點了會換頁,換頁後有home button在跳回首頁
 
1.同一個專案開第二頁=>左邊專案按右鍵,
new=>activity=>empty activity,取名為intent,一次產生兩個檔案
intent.java/activity_intent.xml
 
2.在main.xml的intent button修改變數名稱(ID)btnIn,
再給onclick一個函數名稱BtnIn=>android中的變數名稱就是ID
 
3.切到main的activity,寫程式碼
public class MainActivity extends AppCompatActivity {
    Button btnIn;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btnIn = (Button) findViewById(R.id.btnIn);
    }
 
    public void BtnIn(View v) {
        Intent in = new Intent();
        in.setClass(MainActivity.this,intent.class);
        startActivity(in);
    }
}
**說明:
1.先定義一個Button物件,這邊定義的變數名稱可以和ID同名
2.初始化 (即把R.java中元件的位置指給變數btnIn)
=> btnIn = (Button) findViewById(R.id.btnIn); 
=>把Button物件和btnIn這個按鈕在啟動時掛在一起,但因為是用View找到的(類型為View),如果前面沒有加上(Button)去做轉型,就會出現如下錯誤訊息
3.寫onclick函式public void Btnln(View v){}
=>因為是由View抓來的,所以在等View的訊息傳來再執行這個method
4. Intent in = new Intent();
=>new 一個Intent物件,Intent可以用來換頁(指從一個.java換到執行另外一個.java,亦即從一個*.class換到另一個 *.class檔)
5.換頁要使用Intent的setClass()方法,要帶入兩個引數(本身的class,要切換過去的class檔)
=>本身的寫法: MainActivity.this;要切換過去的class檔為:intent.class
6. startActivity(in);=>用這個方法啟動Intent
 
**注意:
1.如果自己的作的class檔名和Intent物件名稱相同,在new Intent物件的時候要注意路徑指向是否正確,不然會new到自己的class檔
2.假設完成後run一直閃退(閃退就是Exception強迫中斷的結果),檢查View有沒有抓到,另外檢查ID或onclic的函式名稱是否有寫錯(大小寫要完全一樣),因為這邊只設定了兩個名稱
arrow
arrow
    創作者介紹
    創作者 muchone 的頭像
    muchone

    簡單。生活。享受

    muchone 發表在 痞客邦 留言(0) 人氣()