Android系统默认对话框添加图片功能

开发工具Android Studio

今天公司UI要求软件对话框改成加图片的,以前没有做过,所以就学习了一下,废话不多说,

看效果:

创建XML文件dialog_lsit_item.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/my_dialog_shape"> <ImageView android:id="@+id/iv_dialog" android:layout_width="wrap_content" android:layout_height="50dp" android:paddingLeft="20dp" android:gravity="center"/> <TextView android:gravity="center" android:id="@+id/tv_dialog" android:layout_width="wrap_content" android:layout_height="50dp" android:textSize="20sp" android:layout_marginLeft="14dp"/> </LinearLayout> Main_activity.xml布局文件 <TextView style="@style/itemTextLeft" android:layout_width="wrap_content" android:layout_height="@dimen/dp_40" android:drawableLeft="@mipmap/zhifufangshi" android:drawablePadding="@dimen/dp_10" android:text="@string/text_zhifufangshi" /> <TextView android:id="@+id/fangshi" android:clickable="true" style="@style/itemTextLeftNext" android:layout_width="match_parent" android:layout_height="@dimen/dp_40" android:gravity="center_vertical|end" android:drawablePadding="@dimen/dp_10" /> MainActivity.java源文件 //支付对话框 icon or text private String[] datas = {"微信支付", "支付宝支付", "余额支付"}; private int[] images = {R.drawable.weixinzhifu, R.drawable.zhifubaozhifu, R.drawable.yuezhifu}; private List<Map<String, Object>> listItem; public class MainActivity extends BaseActivity implements View.OnClickListener{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); initView(); } @Override protected void initView() { findViewById(R.id.fangshi).setOnClickListener(this); } @Override public void onClick(View view) { if (view != null) { switch (view.getId()) { case R.id.fangshi: showFangshi(); break; } } //选择支付方式 private void showFangshi() { listItem = new ArrayList<Map<String, Object>>(); for (int i = 0; i < datas.length; i++) { Map<String, Object> map = new HashMap<>(); map.put("data", datas[i]); map.put("image", images[i]); listItem.add(map); } SimpleAdapter simpleAdapter = new SimpleAdapter(this, listItem, R.layout.dialog_list_item, new String[]{"data", "image"}, new int[]{R.id.tv_dialog, R.id.iv_dialog}); //自定义列表对话框 AlertDialog.Builder builder = new AlertDialog.Builder(this).setAdapter(simpleAdapter, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { //Toast.makeText(MainActivity.this, "选中了:"+datas[which].toString(),Toast.LENGTH_SHORT).show(); //支付方式那行显示名称 fangshi.setText(datas[which]); //支付方式赋值 payType = which; //关闭对话框 dialog.dismiss(); } }); builder.create().show(); }

注意:支付方式那行显示名称——关闭对话框 里边的变量是我写好的 用的时候可以注释 解除Toast注释。因公司软件  我只是截取部分  用来说明这个效果 就不上源码文件了,感谢!有问题可以私信我!

时间: 2024-10-18 20:25:23

Android系统默认对话框添加图片功能的相关文章

如何给Android中的按钮添加图片功能

在layout中建一个my_login.xml文件 代码如下 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:Android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="

android开发中listview添加图片

问题描述 android开发中listview添加图片 map1.put("image",R.drawable.jiantou); 我在listview中添加图像时,引用图像的地址,如上所示,但提示错误The method put(String, String) in the type HashMap is not applicable for the arguments (String, int) 但我看别人的代码都可以直接引用图像地址的,请大神帮忙解决一下,谢啦!! 解决方案 Ma

web-给位大神,评论中添加图片功能怎么实现的,给小弟点思路吧

问题描述 给位大神,评论中添加图片功能怎么实现的,给小弟点思路吧 就像贴吧那样可以添加图片到评论中然后发出显示评论带图片的.实在想不通,是直接将标签塞入还是其它的方法 解决方案 html编辑器,如ueditor,kindeditor,ckeditor等等 解决方案二: 富文本编译器?推荐markdown

Android实现返回拍摄的图片功能实例_Android

本文实例讲述了Android实现返回拍摄的图片功能.分享给大家供大家参考.具体如下: 第一步: try { Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(intent, 0); } catch (ActivityNotFoundException e) { // Do nothing for now } 第二步: @Override protected void onActi

快速修改android系统默认日期方法

快速修改android系统默认日期方法             在android系统的设备上,都有一个默认的开始日期,看过很多设备,有些设备在没有联网的时候没有同步到系统时间的时候,居然默认的还是1970年的日期,也见过有些设备默认到2000年1月1日的,这样相对进了一步,但是还不够.笔者下面很简单的介绍一下一个超级简单的方法: /***********************************************************************************

Android系统默认Home应用程序(Launcher)的启动过程源代码分析

转自 :http://blog.csdn.net/luoshengyang/article/details/6767736    在前面一篇文章中,我们分析了Android系统在启动时安装应用程序的过程,这些应用程序安装好之后,还需要有一个Home应用程序来负责把它们在桌面上展示出来,在Android系统中,这个默认的Home应用程序就是Launcher了,本文将详细分析Launcher应用程序的启动过程.         Android系统的Home应用程序Launcher是由Activity

详解Android系统中跨应用数据分享功能的实现_Android

一个Andoird应用程序的重要的地方是他们有相互沟通和整合的能力,一个应用程序可以和另一个应用程序交互,接下来我们来看看Android应用之间的内容分享 当你构建Intent的时候,必须要指定Intent的Action触发,定义Intent的Action例如ACTION_SEND,你大概可以猜到指定Action为ACTION_SEND的Intent的作用是从一个Activity发送数据到另一个Activity,甚至跨越不同的进程,将数据发送给另一个Activity,你需要指定数据和他的类型,系

Android系统默认值的设置

项目接近尾声,今天恰好也要初始化一下系统里的默认值,google了一下,有时就得做个拿来主义,没有时才自己做轮子滴嘛,呵呵 1开机图片: android-logo-mask.png android-logo-shine.png 这两个图片一个在上一个在下 ./out/target/common/obj/JAVA_LIBRARIES/android_stubs_current_intermediates/classes/assets/images/android-logo-shine.png ./

详解Android系统中跨应用数据分享功能的实现

一个Andoird应用程序的重要的地方是他们有相互沟通和整合的能力,一个应用程序可以和另一个应用程序交互,接下来我们来看看Android应用之间的内容分享 当你构建Intent的时候,必须要指定Intent的Action触发,定义Intent的Action例如ACTION_SEND,你大概可以猜到指定Action为ACTION_SEND的Intent的作用是从一个Activity发送数据到另一个Activity,甚至跨越不同的进程,将数据发送给另一个Activity,你需要指定数据和他的类型,系