4日目:高度なUIコントロール
2529 ワード
Activity間のジャンプとパス
ジャンプステップ:
1、まずプログラムのAndroidManifest.xmlが起動し、制限ラベルに基づいて中の
コード,決定実行トップページactivity
2、MainActivity.JAvaはActivityを継承してonCreateメソッドを複写することでコードを実行する
呼び出しactivity_main.xml;レイアウトファイルをロード
3.レイアウトファイルでbuttonボタンを設定し、ボタンに傍受文onClickを追加し、MainActivity.JAvaではリスニング方法を記述し、
ボタンのリスニングを実現
4、ボタンをクリックした后にlogin操作を実行して、新しいIntentオブジェクト、オブジェクトの中で2つのパラメータのように置いて、第1のパラメータはコンテキストで、私の理解は今のactivityインタフェースで、第2はジャンプするactivityインタフェースの対応するクラスです;
5、startActivity(intent);文はインタフェースのジャンプを実現する
6、インタフェースのジャンプ後、まずScondActivityを実行する.JAva,同様に継承されたactivityクラスに基づいてonCreate()メソッドを複写し,コンテンツ文のロードを実行する
呼び出しactivity_second.xmlによりページレイアウトを実現
二、Activity間の値伝達
値の転送:値は一般データ型、バイト配列、listセットに分けられます
一般的なデータ型転送:
オブジェクト:
Listコレクションは、ArrayList<>コレクションのみを置くことができ、ArrayListのみがserializableシーケンス化インタフェースを実現しているため、Listは実現していない
データの受信:
一般データ型受信
オブジェクトの受信:
コレクションの受信:
ジャンプステップ:
1、まずプログラムのAndroidManifest.xmlが起動し、制限ラベル
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
コード,決定実行トップページactivity
2、MainActivity.JAvaはActivityを継承してonCreateメソッドを複写することでコードを実行する
setContentView(R.layout.activity_main);
呼び出しactivity_main.xml;レイアウトファイルをロード
3.レイアウトファイルでbuttonボタンを設定し、ボタンに傍受文onClickを追加し、MainActivity.JAvaではリスニング方法を記述し、
public void login1(View view) {
Intent intent=new Intent(MainActivity.this, ScondActivity.class);
startActivity(intent);
}
ボタンのリスニングを実現
4、ボタンをクリックした后にlogin操作を実行して、新しいIntentオブジェクト、オブジェクトの中で2つのパラメータのように置いて、第1のパラメータはコンテキストで、私の理解は今のactivityインタフェースで、第2はジャンプするactivityインタフェースの対応するクラスです;
5、startActivity(intent);文はインタフェースのジャンプを実現する
6、インタフェースのジャンプ後、まずScondActivityを実行する.JAva,同様に継承されたactivityクラスに基づいてonCreate()メソッドを複写し,コンテンツ文のロードを実行する
setContentView(R.layout.activity_second);
呼び出しactivity_second.xmlによりページレイアウトを実現
二、Activity間の値伝達
値の転送:値は一般データ型、バイト配列、listセットに分けられます
一般的なデータ型転送:
intent.putExtra("key",12); //
intent.putExtra("name"," "); //
オブジェクト:
Student stu =new Student();
stu.setName=" ";
stu.setAge=23;
intent.putExtra("stu",stu);
Listコレクションは、ArrayList<>コレクションのみを置くことができ、ArrayListのみがserializableシーケンス化インタフェースを実現しているため、Listは実現していない
ArrayList<Student> list=new ArrayList<Student>();
Collections.addAll(list,stu1,stu2,stu3);
intent.putExtra("list",list);
データの受信:
一般データ型受信
Intent intent=getIntent();
int key=intent.getIntExtra();
String name=intent.getStringExtra();
Log.d(TAG,key+" " +name ); //
オブジェクトの受信:
Intent intent=getIntent();
Student stu=(Student)intent.getSerializableExtra();
Log.d(TAG,stu.name+""+stu.age);
コレクションの受信:
Intent intent =getIntent();
ArrayList<Student> list=(ArrayList<Student>) intent.getSerializableExtra();
Log.d(TAG,list.toString());
int checked = radioGroup.getCheckedRadioButtonId();// radioButton id
RadioButton radioButton = (RadioButton) radioGroup.findViewById(checked);
String sex = radioButton.getText().toString();