Android的Activity页有很多形式,其实一种非常常用的是对话框式,实现如下:
new一个FirstActivity作为首页,和一个SecondActivity作为弹出的对话框:
首页布局如下:
首页功能是打开一个对话框,代码如下:
public class FirstActivity extends Activity{
private Button btn1=null;
class BtnClickListener implements OnClickListener{
@Override
public void onClick(View arg0) {
Intent intent=new Intent();
intent.setClass(FirstActivity.this, SecondActivity.class);
FirstActivity.this.startActivity(intent);
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.first );
btn1=(Button)findViewById(R.id.btn1);
btn1.setOnClickListener(new BtnClickListener());
}
}
对话框样式如下:
增加子页代码如下:
public class SecondActivity extends Activity {
private Button btn2=null;
class BtnClickListener implements OnClickListener{
@Override
public void onClick(View v) {
finish();
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.second);
btn2=(Button)findViewById(R.id.btn2);
btn2.setOnClickListener(new BtnClickListener());
}
}
为了使子页形式为对话框式,需要在配置文件AndroidManifest.xml修改如下:
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.activity_05.FirstActivity"
android:label="@string/first_title" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.example.activity_05.SecondActivity"
android:label="@string/second_title"
android:theme="@android:style/Theme.Dialog">
</activity>
</application>
修改SecondActivity的android:theme属性,为"@android:style/Theme.Dialog"即可。