自定义列表对话框(一)
发布日期:2021-06-30 11:22:44 浏览次数:2 分类:技术文章

本文共 2446 字,大约阅读时间需要 8 分钟。

dialog.xml如下:

listview_item.xml如下:

main.xml如下:

 

styles.xml如下:

mainActivity如下:

package c.c.testdialog;import android.app.Activity;import android.app.Dialog;import android.os.Bundle;import android.view.LayoutInflater;import android.view.View;import android.view.View.OnClickListener;import android.widget.AdapterView;import android.widget.AdapterView.OnItemClickListener;import android.widget.ArrayAdapter;import android.widget.Button;import android.widget.ListView;import android.widget.TextView;/** * Demo描述: * 自定义列表对话框(自定义View中采用ListView) * 该例比自定义列表对话框(二)的代码和效果都要好 * 遇到的问题: * 自定义对话框有黑色边框 * 解决办法: * 设置样式(style) * 参考资料: * http://april19880317.blog.51cto.com/1938095/690380 */public class MainActivity extends Activity {   private Button mButton;   private View mDialogView;   private Dialog mDialog;   private ListView mListView;	@Override	protected void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.main);		init();	}	private void init(){		mButton=(Button) findViewById(R.id.button);		mButton.setOnClickListener(new ClickListenerImpl());	}	private class ClickListenerImpl implements OnClickListener {		@Override		public void onClick(View v) {			switch (v.getId()) {			case R.id.button:				// 弹出自定义对话框				showDialog();				break;			default:				break;			}		}	}	private void showDialog(){			String[] items = new String[] { "发送电子邮件", "分享到Twitter", "分享到FaceBook"}; 			LayoutInflater  layoutInflater=(LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);		mDialogView=layoutInflater.inflate(R.layout.dialog, null);		mListView=(ListView) mDialogView.findViewById(R.id.listView);		ArrayAdapter
adapter= new ArrayAdapter
(MainActivity.this, R.layout.listview_item,items); mListView.setAdapter(adapter); mListView.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView
arg0, View arg1, int arg2,long arg3) { switch (arg2) { case 0: System.out.println("------> 发送电子邮件"); mDialog.dismiss(); break; case 1: System.out.println("------> 分享到Twitter"); mDialog.dismiss(); break; case 2: System.out.println("------> 分享到FaceBook"); mDialog.dismiss(); break; default: break; } } }); mDialog=new Dialog(MainActivity.this, R.style.dialog); mDialog.setContentView(mDialogView); mDialog.show(); }}

 

转载地址:https://it9527.blog.csdn.net/article/details/8607149 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Android调用邮件客户端
下一篇:自定义列表对话框(二)

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年04月12日 10时58分46秒