




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【移动应用开发技术】Spinner怎么在Dialog中使用
Spinner怎么在Dialog中使用?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面在下将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Spinner在Dialog中的使用,Dialog中关于view的xml布局。<?xml
version="1.0"
encoding="utf-8"?>
<LinearLayout
xmlns:android="/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="16dp">
<Spinner
android:id="@+id/spinner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="2dp"
/>
<EditText
android:id="@+id/edit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="8dp"
/>
</LinearLayout>dialog初始化,加载,显示出来的完整代码(包含对Spinner进行Adapter设置)。private
void
showAlertDialog()
{
View
view
=
LayoutInflater.from(this).inflate(R.layout.dialog_add_notebook,
null);
Spinner
spinner
=
view.findViewById(R.id.spinner);
ArrayAdapter<String>
arrayAdapter
=
new
ArrayAdapter<>(this,
R.layout.simple_spinner_item,
android.R.id.text1,
categories);
spinner.setAdapter(arrayAdapter);
spinner.setOnItemSelectedListener(new
AdapterView.OnItemSelectedListener()
{
@Override
public
void
onItemSelected(AdapterView<?>
parent,
View
view,
int
position,
long
id)
{
Toast.makeText(MainActivity.this,
"选中的分类是:
"
+
categories.get(position),
Toast.LENGTH_LONG).show();
}
@Override
public
void
onNothingSelected(AdapterView<?>
parent)
{
}
});
new
AlertDialog.Builder(this)
.setTitle("提示")
.setView(view)
.setPositiveButton(android.R.string.ok,
new
DialogInterface.OnClickListener()
{
@Override
public
void
onClick(DialogInterface
dialog,
int
which)
{
dialog.dismiss();
}
})
.show();
}只能说spinner在dialog中,显示出来的效果一般般,即使通过自定义item布局,调整padding,感觉效果也不是特别让人满意。截张图:
在Github上找到一个不错的项目,/Lesilva/BetterSpinner。修改代码,替换为BetterSpinner。在app/build.gradle中添加compile‘com.weiwangcn.betterspinner:library:1.1.0'xml布局文件修改为:<?xml
version="1.0"
encoding="utf-8"?>
<LinearLayout
xmlns:android="/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="16dp">
<com.weiwangcn.betterspinner.library.material.MaterialBetterSpinner
android:id="@+id/spinner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/activity_vertical_margin"
android:hint="@string/notebook_choose_notebook_hint"
/>
<EditText
android:id="@+id/edit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="8dp"
/>
</LinearLayout>显示dialog的方法调整为public
void
onClickedAddNotebook(final
String
parentNotebookId,
List<Notebook>
notebooks)
{
View
view
=
LayoutInflater.from(mActivity).inflate(R.layout.dialog_add_notebook,
null);
final
EditText
mEdit
=
(EditText)
view.findViewById(R.id.edit);
final
MaterialBetterSpinner
spinner
=
(MaterialBetterSpinner)
view.findViewById(R.id.spinner);
final
List<Notebook>
tempNotebooks
=
new
ArrayList<>();
tempNotebooks.clear();
tempNotebooks.addAll(notebooks);
Notebook
rootNoteBook
=
new
Notebook();
rootNoteBook.setTitle(mActivity.getString(R.string.notebook_default_root_notebook_title));
tempNotebooks.add(0,
rootNoteBook);
SpinnerArrayAdapter<Notebook>
adapter
=
new
SpinnerArrayAdapter<Notebook>(view.getContext(),
tempNotebooks)
{
@Override
public
String
itemToString(Notebook
item)
{
return
item.getTitle();
}
};
spinner.setAdapter(adapter);
spinner.setText(rootNoteBook.getTitle());
new
AlertDialog.Builder(mActivity)
.setTitle(R.string.add_notebook)
.setView(view)
.setPositiveButton(R.string.confirm,
new
DialogInterface.OnClickListener()
{
@Override
public
void
onClick(DialogInterface
dialog,
int
which)
{
dialog
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电网侧独立储能示范项目数字化方案(参考模板)
- 2025年可生物降解有机垃圾厌氧发酵装置项目合作计划书
- 2025年不孕不育医院项目建议书
- 2025年血液灌流吸附器项目合作计划书
- 我国基本法宪法知识竞赛题库及答案277题
- 文化遗产保护的数字化策略
- 2025年重氮化合物项目发展计划
- 保险行业数字化理赔服务在自然灾害应对中的实战分析报告
- 2025年教育信息化基础设施建设中网络安全问题研究报告
- 2025年远程医疗服务在分级诊疗中的远程医疗人才培养报告
- 2025年沈阳市高校毕业生“三支一扶”计划招募考试笔试试题(含答案)
- 2025年广西中考英语真题(原卷版)
- 无人机应用技术 1.32.穿越机的三种飞行形式
- 宁夏城市发展集团有限责任公司招聘笔试题库2025
- DB11∕T 2000-2022 建筑工程消防施工质量验收规范
- 老年康养服务中心项目可行性研究报告写作参考范文
- 生物质中纤维素、半纤维素和木质素含量的测定
- 枸杞采摘合同
- 涡流探伤仪设计方案
- 张家界船舶工业项目建议书【模板范本】
- 来料检验报告模板
评论
0/150
提交评论