喝酒不骑马的Android自学日记(9)-Spinner的实例
2015-12-20 01:13
525 查看
喝酒不骑马的Android自学日记(9)-Spinner的实例***2015年12月19日
Spinner的实例
先总结下,有关这类带数据源的View,基本思路都是一致的。
建立数据源,一般用list。然后建立适配器,分为Simple适配器和Array适配器。然后把数据源加载到适配器里,最后把适配器加载到View里。如果需要有点击事件的话,implements相应的接口,在方法里写入点击后的逻辑。
这里Spinner中的数据源list,用add.list()方法
在onItemSelected这个方法中
String cityName = adapter.getItem(position);
String cityName1 = list.get(position);
这两种方法都可以获取Spinner列表里所点击的text文本。
代码:
MainActivity.java:
XML
ProgressBar进度条
关于ProgressBar的style属性
style="?android:attr/progressBarStyleLarge"---大进度圈
如果什么都不设置默认是中进度圈
style="?android:attr/progressBarStyleSmall"---小进度圈
style="?android:attr/progressBarStyleHorizontal"---进度条
其中进度条可以是不精确显示进度,类似于过场动画表示正在加载
也可以是精确显示进度,可以按百分比形式呈现
现在想在标题栏里添加进度条。但是出了点问题,现版本开发包,说是默认继承AppcompatActivity,但是用不了
RequestWindowFeature(Window.FEATURE_PROGRESS);
RequestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
如果继承Activity,标题栏又没有了。查了一晚上,不知道怎么解决。明天再查查。
2015年12月20日
------------------------------------------------------------
Spinner的实例
先总结下,有关这类带数据源的View,基本思路都是一致的。
建立数据源,一般用list。然后建立适配器,分为Simple适配器和Array适配器。然后把数据源加载到适配器里,最后把适配器加载到View里。如果需要有点击事件的话,implements相应的接口,在方法里写入点击后的逻辑。
这里Spinner中的数据源list,用add.list()方法
在onItemSelected这个方法中
String cityName = adapter.getItem(position);
String cityName1 = list.get(position);
这两种方法都可以获取Spinner列表里所点击的text文本。
代码:
MainActivity.java:
public class MainActivity extends AppCompatActivity implements AdapterView.OnItemSelectedListener{ private TextView textView; private Spinner spinner; private List<String> list; private ArrayAdapter<String> adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); textView = (TextView) findViewById(R.id.textView); spinner = (Spinner) findViewById(R.id.spinner); textView.setText("您现在选择的城市是沈阳"); //1.设置数据源 list = new ArrayList<String>(); list.add("沈阳"); list.add("锦州"); list.add("大连"); list.add("鞍山"); //2.新建ArrayAdapter(数组适配器) adapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,list); //3.adapter设置一个下拉菜单的样式 adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); //4.spinner加载适配器 spinner.setAdapter(adapter); //5.spinner设置监听器 spinner.setOnItemSelectedListener(this); } @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { String cityName = adapter.getItem(position); //String cityName1 = list.get(position); textView.setText("您现在选择的城市是" + cityName); } @Override public void onNothingSelected(AdapterView<?> parent) { } }
XML
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:orientation="vertical" tools:context="com.example.martin.study.MainActivity"> <TextView android:id="@+id/textView" android:layout_width="match_parent" android:layout_height="wrap_content" android:textSize="25sp" android:textColor="#ff0000"/> <Spinner android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/spinner"> </Spinner> </LinearLayout>
ProgressBar进度条
关于ProgressBar的style属性
style="?android:attr/progressBarStyleLarge"---大进度圈
如果什么都不设置默认是中进度圈
style="?android:attr/progressBarStyleSmall"---小进度圈
style="?android:attr/progressBarStyleHorizontal"---进度条
其中进度条可以是不精确显示进度,类似于过场动画表示正在加载
也可以是精确显示进度,可以按百分比形式呈现
现在想在标题栏里添加进度条。但是出了点问题,现版本开发包,说是默认继承AppcompatActivity,但是用不了
RequestWindowFeature(Window.FEATURE_PROGRESS);
RequestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
如果继承Activity,标题栏又没有了。查了一晚上,不知道怎么解决。明天再查查。
2015年12月20日
------------------------------------------------------------
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories