AlertActivity
对话框的实现,
1.确定/取消。
2.单选对话框的实现:
bt2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final AlertDialog.Builder builder=new AlertDialog.Builder(AlertActivity.this);
builder.setTitle("请选择");
builder.setIcon(R.mipmap.ic_launcher);
builder.setCancelable(false);
final String[] items={"北京","上海","烟台"};
builder.setSingleChoiceItems(items, 1, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface d, int i) {
Toast.makeText(getBaseContext(), items[i].toString(), Toast.LENGTH_SHORT).show();
//点击选项后对话框自动消失
d.dismiss();
}
});
AlertDialog alertDialog=builder.create();
alertDialog.show();
}
});
3.多选对话框的实现:
bt3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder builder=new AlertDialog.Builder(AlertActivity.this);
builder.setTitle("多选");
builder.setIcon(R.mipmap.ic_launcher);
//final表示加强对items的引用,使其不会被系统删掉
final String[] items={"北京","上海","烟台","南京","杭州"};
final boolean[] choice={true,true,false,false,false};
builder.setMultiChoiceItems(items, choice, new DialogInterface.OnMultiChoiceClickListener() {
@Override
public void onClick(DialogInterface dialog, int i, boolean b) {
if (b) {
Toast.makeText(getBaseContext(), items[i].toString(), Toast.LENGTH_SHORT).show();
choice[i] = true;
// itemchoice[i]=true;
} else {
choice[i] = false;
// itemchoice[i]=false;
}
}
});
builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
String str = "";
for (int ch = 0; ch < items.length; ch++) {
str += (choice[ch] == true) ? items[ch] : "";
// str +=(itemchoice[ch] == true)? items[ch] : "";
}
Toast.makeText(getBaseContext(), str, Toast.LENGTH_SHORT).show();
//dialog.dismiss();
}
});
AlertDialog alertDialog=builder.create();
alertDialog.show();
}
});
4.点击对话框的图片Toast输出。
LoginActivity
用户登录界面效果为:
对每个Button以不同的方法实现监听。
MainActivity
ToolBar以及FloatingActionButton的使用
//activity中的代码
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
//布局中的代码
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout>
<include layout="@layout/content_main" />
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="@dimen/fab_margin"
android:src="@android:drawable/ic_dialog_email" />