Android学习笔记(5)——对话框

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

posted on 2012-12-18 18:13  影天  阅读(3768)  评论(0编辑  收藏  举报

导航