/*
*
* 多功能菜单...
*
* */
package com.example.andbaseanotheractivity;
import com.ab.activity.AbActivity;
import com.ab.global.AbConstant;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
public class MainActivity extends AbActivity implements View.OnClickListener {
private Button but[]=new Button[6];
private View view;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setAbContentView(R.layout.activity_main);
InitFindID();
}
public void InitFindID(){
for(int i=0;i<but.length;i++){
String resID="but_"+i;
but[i]=(Button) findViewById(this.getResources().getIdentifier(resID, "id", "com.example.andbaseanotheractivity")); //寻找ID的一种比较好的方式..这种方式的使用前提是ID的定义一定要有一定的规则...
but[i].setOnClickListener(this);
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
view=mInflater.inflate(R.layout.demo_text, null);
switch(v.getId()){
case R.id.but_0:
showProgressDialog(); //直接弹出圆形进度框...
break;
case R.id.but_1:
showToast("Toast文本框"); //Toast文本框...
break;
case R.id.but_2:
showDialog(AbConstant.DIALOGTOP, view); //弹出框..传递参数为显示的位置以及显示的视图...这里表示在最上方弹出...
break;
case R.id.but_3:
showDialog(AbConstant.DIALOGCENTER, view); //
break;
case R.id.but_4:
showDialog(AbConstant.DIALOGBOTTOM, view);
break;
case R.id.but_5:
//可以看到确认框也是调用showDialog方法..只是传递的参数不相同..AbActivity也针对这几种不同的弹出框定义了不同的方法...
showDialog("标题", "描述", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
showToast("点击确认");
}
});
break;
}
}
}
AlertDialog.Builder builder=new Builder(MainActivity.this);
builder.setTitle("提示");
builder.setMessage("确认退出");
builder.setPositiveButton("确认", new OnClickListener() { //添加确认按钮...
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
dialog.dismiss(); /提示框消失..
}
});
builder.setNegativeButton("取消", new OnClickListener() { //添加取消按钮..
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
dialog.dismiss();
}
});
showDialog("提示", "确认退出", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
showToast("点击确认");
}
});
/**
* 描述:Toast提示文本.
* @param text 文本
*/
public void showToast(String text) {
Toast.makeText(this,""+text, Toast.LENGTH_SHORT).show(); //这里已经把这个方法封装好了...我们只需要传递需要显示的文本就行了...
}
/**
* 描述:Toast提示文本.
* @param resId 文本的资源ID
*/
public void showToast(int resId) {
Toast.makeText(this,""+this.getResources().getText(resId), Toast.LENGTH_SHORT).show(); //这种方法则是通过resID来设置需要显示的文本...
}
/**
* 描述:显示进度框.
*/
public void showProgressDialog() {
showProgressDialog(null); //没有显示进度的进度框..
}
/**
* 描述:显示进度框.
* @param message the message
*/
public void showProgressDialog(String message) {
// 创建一个显示进度的Dialog
if(!AbStrUtil.isEmpty(message)){
mProgressMessage = message; //设置进度框显示的信息...
}
if (mProgressDialog == null) {
mProgressDialog = new ProgressDialog(this);
// 设置点击屏幕Dialog不消失
mProgressDialog.setCanceledOnTouchOutside(false);
}
mProgressDialog.setMessage(mProgressMessage);//设置进度框显示的消息..
showDialog(AbConstant.DIALOGPROGRESS);
}
private void setDialogLayoutParams(Dialog dialog,int dialogPadding,int gravity){
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); //设置没有标题..
Window window = dialog.getWindow(); //获取窗口...
WindowManager.LayoutParams lp = window.getAttributes();//获取窗口属性...
//此处可以设置dialog显示的位置
window.setGravity(gravity); //设置窗口的对其方式...
//设置宽度
lp.width = diaplayWidth-dialogPadding;
lp.type = WindowManager.LayoutParams.TYPE_APPLICATION_ATTACHED_DIALOG;
//背景透明
//lp.screenBrightness = 0.2f;
lp.alpha = 0.8f;
lp.dimAmount = 0f;
window.setAttributes(lp);
// 添加动画
window.setWindowAnimations(android.R.style.Animation_Dialog);
// 设置点击屏幕Dialog不消失
dialog.setCanceledOnTouchOutside(false);
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有