Android系統(tǒng)默認對話框添加圖片功能
更新時間:2017年01月08日 11:13:45 作者:上七旗娃兒
這篇文章主要介紹了Android系統(tǒng)默認對話框添加圖片的相關資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
開發(fā)工具Android Studio
今天公司UI要求軟件對話框改成加圖片的,以前沒有做過,所以就學習了一下,廢話不多說,
看效果:

創(chuàng)建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注釋。因公司軟件 我只是截取部分 用來說明這個效果 就不上源碼文件了,感謝!有問題可以私信我!
您可能感興趣的文章:
相關文章
Android編程實現(xiàn)PendingIntent控制多個鬧鐘的方法
這篇文章主要介紹了Android編程實現(xiàn)PendingIntent控制多個鬧鐘的方法,涉及PendingIntent屬性設置與使用的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-12-12
詳解Android PopupWindow怎么合理控制彈出位置(showAtLocation)
本篇文章主要介紹了詳解Android PopupWindow怎么合理控制彈出位置(showAtLocation),具有一定的參考價值,有興趣的可以了解一下2017-10-10
Android開發(fā)之拼音轉換工具類PinyinUtils示例
這篇文章主要介紹了Android開發(fā)之拼音轉換工具類PinyinUtils,涉及Android基于pinyin4j-2.5.0.jar包文件實現(xiàn)漢字轉拼音功能的相關操作技巧,需要的朋友可以參考下2017-11-11

