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"即可。