下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【移动应用开发技术】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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年甘肃客运从业资格证操作考试内容
- 2023年北京市初三一模道德与法治试题汇编:综合探究题
- 吉首大学《民法总论》2021-2022学年第一学期期末试卷
- 吉首大学《动态网站设计》2021-2022学年期末试卷
- 吉林艺术学院《影视语言技巧》2021-2022学年第一学期期末试卷
- 吉林艺术学院《书法》2021-2022学年第一学期期末试卷
- 车辆赔偿协议书范本文版
- 私人房屋转赠协议书范文模板
- 吉林师范大学《中国地理》2021-2022学年第一学期期末试卷
- 2022年江西省公务员录用考试《申论》真题(行政执法类卷)及答案解析
- 汽车美容店股东合伙协议书
- 1.绘画的多元化 (3)
- Q∕GDW 12108-2021 电力物联网全场景安全技术要求
- 2022年《艺术学概论》知识点超经典总结
- 医院医疗精神科危险物品管理PPT课件讲义
- AECOPD病例分享
- (完整版)电线电缆载流量表
- GB-T-7975-2005 纸和纸板颜色的测定(漫反射法)
- 项目建设管理模式0704
- 公务员考试公文写作与处理试题及参考答案(全)
- 渝价〔2013〕430号
评论
0/150
提交评论