第一个拨号器
1.在布局layout里面修改布局格式为LinearLayout
设置android:orientation="vertical"
2.再添加两个部件 EditText Button,自定义id
3.在主代码部分用findViewById(R.id.bt)获取部件内容
写一个继承自OnClickListener的内部类
4.设置监听bt.setOnClickListener(new MyListener());
获取TextEdit内容:et.getText().toString();
5.在内部类里面重写onClick方法,在其中新建一个意图并启动Activity
Intent intent =new Intent(Intent.ACTION_CALL);//告诉系统自己动作为打电话
intent.setData(Uri.parse("tel:"+str));//设置打电话的内容
startActivity(intent);//启动意图
设置按钮点击事件还可以这样
1.用匿名内部类
bt.setOnClickListener(new MyListener(){
/*直接写入方法*/
});
2.让所在类implementsOnClickListener
bt.setOnClickListener(this);
3.直接在部件里面添加(安卓特有)
android:οnclick=”click”
然后在程序入口写click方法
public void click(View v){
System.out.println("测试成功");
}
View是指触发方法的组件对象
比如三个按钮调用同一个方法,在一个方法中实现三个不同调用,利用int id = v.getId();
再利用
switch(id){
case R.id.bt1:
/*实现内容*/
break;
case R.id.bt2:
/*实现内容*/
break;
case R.id.bt2:
/*实现内容*/
break;
}
dp与px的区别
在不同的分辨率下dp可以更好的适配(但不能完美解决布局问题)
线性竖直布局时,左右对齐生效,竖直对齐无效
权重(多出来的区域进行分配): android:weight:”1”
线性竖直布局,可将每个子组件height设置为0dp而将weight设置为1,此时布局内子组件高度平均分配