一、创建一个新的Activity
1.android的四大组件都要在清单文件里面配置
2.如果想让你的应用有多个启动图标,你的activity需要这样配置
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
3.Activity下的lable和icon属性可以和Application节点的属性不一样,默认用Application节点下的属性
二、意图(intent)
隐式意图:通过指定一组动作或数据
Intent intent = new Intent(); //设置跳转的动作 intent.setAction("com.cn.testActivity"); intent.addCategory("android.intent.category.DEFAULT"); //开启activity startActivity(intent);
显示意图:通过指定具体的包名和类名 。Intent intent = new Intent(this,TestActivity.class);
总结:1.开启自己应用的界面用显示意图。
2.开启其他应用(系统应用)用隐式意图。(电话拨号器)
3.显示意图更安全一些。
三、短信大全案例
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ListView lv = (ListView) findViewById(R.id.lv); //设置数据 ArrayAdapter<String> adapter = new ArrayAdapter<String>(getApplicationContext(), R.layout.item, R.id.tv_content, objects); //设置数据适配 lv.setAdapter(adapter); //给ListView设置点击事件 lv.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { //把点击条目的数据取出来 String content = objects[position]; Intent intent = new Intent(); //设置action intent.setAction("android.intent.action.SEND"); intent.addCategory("android.intent.category.DEFAULT"); intent.setType("text/plain"); //传递数据 intent.putExtra("sms_body", content); //跳转到发送短信的页面 startActivity(intent); } }); } }