android:
id="@+id/et1"
android:
layout_width="fill_parent"
android:
layout_height="wrap_content"
/>
(2)第二步:
为了保证布局文件与Activity之间绑定:
并且对界面进行一些事件的绑定。
Activity01的代码:
publicclassActivity01extendsActivity{
privateEditTextet;//编辑框
privateButtonbtn;
privateTextViewtv;//本文框
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity01);
et=(EditText)findViewById(R.id.et1);
btn=(Button)findViewById(R.id.btn1);
tv=(TextView)findViewById(R.id.tv1);
btn.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewv){
Intentintent=newIntent(Activity01.this,Activity02.class);
//先获得编辑框EditText的数据
Stringstr=et.getText().toString();
//将str交给Intent发送到Activity02
intent.putExtra("data",str);
Activity01.this.startActivity(intent);
}
});
}
}
Activity02的代码:
publicclassActivity02extendsActivity{
privateEditTextet;
privateButtonbtn;
privateTextViewtv;//文本框
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity02);
et=(EditText)findViewById(R.id.et1);
btn=(Button)findViewById(R.id.btn1);
tv=(TextView)findViewById(R.id.tv1);
//通过Activity获得当前的Intent对象
Intentintent=this.getIntent();
//拿出Intent对象里面的数据data
Stringstr=intent.getStringExtra("data");
//将data送给Activty02上面的文本框
tv.setText(str);
}
}
(3)注册Activity
七,实现Activity之间的数据交换。
双向
(1)Activity01核心代码:
publicclassActivity01extendsActivity{
privateEditTextet;//编辑框
privateButtonbtn;
privateTextViewtv;//本文框
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity01);
et=(EditText)findViewById(R.id.et1);
btn=(Button)findViewById(R.id.btn1);
tv=(TextView)findViewById(R.id.tv1);
btn.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewv){
Intentintent=newIntent(Activity01.this,Activity02.class);
//先获得编辑框EditText的数据
Stringstr=et.getText().toString();
//将str交给Intent发送到Activity02
intent.putExtra("data",str);
//Activity01.this.startActivity(intent);
startActivityForResult(intent,1);
et.setText("");
}
});
}
(2)Activity02核心代码:
publicclassActivity02extendsActivity{
privateEditTextet;
privateButtonbtn;
privateTextViewtv;//文本框
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity02);
et=(EditText)findViewById(R.id.et1);
btn=(Button)findViewById(R.id.btn1);
tv=(TextView)findViewById(R.id.tv1);
//通过Activity获得当前的Intent对象
finalIntentintent=this.getIntent();
//拿出Intent对象里面的数据data
Stringstr=intent.getStringExtra("data");
//将data送给Activty02上面的文本框
tv.setText(str);
//为回复按钮添加单击事件
btn.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewv){
//Intentintent=newIntent();
//先获得编辑框EditText的数据
Stringstr=et.getText().toString();
//将str交给Intent发送到Activity02
intent.putExtra("data",str);
setResult(RESULT_OK,intent);
et.setText("");
finish();
}
});
}
}
(3)注册Activity
八,Intent的组成和分类:
(1)Intent的组成:
A.种类(category)
B.操作的动作(Action)
C.组件(component)
D.附加的数据(Extras)
(2)显示的:
Intentintent=newIntent(A1,A2)
隐式的:
在androidMenifest.xml中配置Android平台定位的消费者。
(3)操作类型(动作Action)和数据
A.动作是ACTION_CALL:
数据字段:
tel:
uri或者电话号码。
B.动作是ACTION_SEND:
数据字段:
发送短信
C.动作是ACTION_VIEW:
数据字段:
http:
URI,接受动作将调用去下载和显示一个URI所指向的数据
九,布局文件:
(1)常见的控件
TextView,Button,EditText,
RadioButton
(2)复杂的控件:
ListView,GridView,自定义的View
(3)布局文件
LinearLayout
RelativeLayout
TableLayout
AbsoluteLayout
(4)布局文件常见的属性:
Android:
id
Android:
text尽量使用string.xml
Android:
textSize文字sp图片dipdp
Android:
background“#ff0000“
Android:
gravity
Android:
padding*
Android:
hint在编辑文本中提升术语的设置
(5)
一十,ListView+Adapter
(1)问题1:
Listview怎么显示数据?
数据要通过Adapter存放到ListView上去
问题2:
数据要以什么样的方式去显示(布局文件有关系)
(2)Adapter
数据(Data)集合or数组
Java|----------Adapter------ListView
布局文件
(3)API:
parent
TheAdapterViewwheretheclickhappened.
view
TheviewwithintheAdapterViewthatwasclicked(thiswillbeaviewprovidedbytheadapter)
position
指代的是View(TextView)在当前Adapter的位置
id
Therowidoftheitemthatwasclicked.
指代的是View(ListView)中Item的id
一十一,
List
怎么动态的添加一个student对象?
这个对象只有在运行的时候才知道它的属性和方法?
程序的动态性?
ClassStudent{
PrivateStringname;
PrivateStringphone;
//必须更改里面的代码
}
为他添加新的属性age
NewStudent(“ESON”,”12345”);
List
Mapstudent=newHashMap();
Student.put(“name”,”ESON”);
Student.put(“phone”,”12345”);
Student.put(“age”,”18”);