Android 入门到精通 (三)(界面编程#1-从Button说起)
来源:互联网 发布:南京软件开发培训 编辑:程序博客网 时间:2024/06/02 19:17
一,布局管理(Layout)
每一个界面组件都是View的子类,都可以单独占用一个屏幕,但是真正的有用的界面都是这些组件的组合,在Android中都是用各种Layout来进行布局管理,这与传统的J2SE中的一些AWT,SWING界面方式基本相同,这里就不多说。
二,一个单独的界面元素:
在前面说到Hello World例子中,讲过这样一段代码。在Activity中.
public class HelloActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
tv.setText("Hello, World!");
this.setContentView(tv);
}
}
这里并没有用到Layout,这就是单独的组件方式。也可以改为:
super.onCreate(savedInstanceState);
Button btn = new Button(this);
btn.setText("TestButton");
this.setContentView(btn);
编译运行,会有一个全屏的Button,当然这不是你想要的实用的界面.那我们就用Layout来布局
super.onCreate(savedInstanceState);
Button btn = new Button(this);
btn.setText("TestButton");
Button btn2 = new Button(this);
btn2.setText("TestButton2");
LinearLayout layout = new LinearLayout(this);
layout.setOrientation(LinearLayout.VERTICAL);
layout.addView(btn);
layout.addView(btn2);
this.setContentView(layout);
编译运行,你就可以看到了两个上下排列的按钮,当然对于布局管理器的使用,做过PC 上AWT,SWING的人都不陌生,这里就不赘述。
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.LinearLayout;
public class HelloActivity extends Activity implements OnClickListener {
Button btn = null;
Button btn2 = null;
public void onClick(View v) {
if (v == btn)
{
this.setTitle("You Clicked Button1");
}
if (v == btn2)
{
this.setTitle("You Clicked Button2");
}
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
btn = new Button(this);
btn2 = new Button(this);
btn.setText("TestButton1");
btn2.setText("TestButton2");
btn.setOnClickListener(this);
btn2.setOnClickListener(this);
LinearLayout layout = new LinearLayout(this);
layout.setOrientation(LinearLayout.VERTICAL);
layout.addView(btn);
layout.addView(btn2);
this.setContentView(layout);
}
}
一,生成两个Button,配置Click事件监听者为HelloActivity ,此类实现了OnClickListener接口。
二,放入布局,按布局显示两个Button
三,按下其中一个Button,生成Click事件,调用HelloActivity 的OnClick接口函数。
四,对于View参数的值,判断是哪个View(Button)。改写Activity的Titile内容。注意,可别去对比View.getId(),缺省情况下,每个组件的Id值都为-1,除非人为设定Id值,用可视化编程时,为自动为其生成一个Id值。
- Android 入门到精通 (三)(界面编程#1-从Button说起)
- Android从入门到精通之编程实现软件界面方法
- JavaWeb从入门到精通(三)-servlet编程
- Android 入门到精通 (界面编程#2-Menu)
- intellij idea开发android从入门到精通(三)
- Android 从入门到精通
- delphi7从入门到精通之三
- RMS从入门到精通之三
- RMS从入门到精通之三
- Java学习从入门到精通(三)
- RMS从入门到精通之三
- RMS从入门到精通之三
- delphi7从入门到精通之三
- Servlet从入门到精通三
- mybatis 从入门到精通(三)
- Nginx开发从入门到精通三
- JMS&MQ,从入门到精通(三)
- ActiveMQ从入门到精通(三)
- 数据恢复
- Java中内部类的调用
- 中国人必须知道的76个常识
- 设计客户化标签 TLD
- Android 程序组件之间交互
- Android 入门到精通 (三)(界面编程#1-从Button说起)
- VS2008 "找不到一个或多个组件,请重新安装该应用程序"
- 关于const 限定符的一些概念
- 求助
- 面试归来
- 从不是创建控件“label1”的线程访问它。
- mysql的八小时保护机制
- Control.CheckForIllegalCrossThreadCalls=false不可在多线中随便使用
- Excel2007 & WPS 冻结窗格