如何拿到Spinner的当前值,并实时传递至TextView中显示
2014-05-13 16:56
381 查看
下午项目中,要用到这个东西:
拿到Spinner的当前值,并把拿到的值,实时传递给TextView,然后,显示在TextView当中。
布局文件是这样的:
后来,经过黄老尸指点,终于找到了解决方案:
1、给Spinner添加一个监听器;
2、点击Spinner,选择值后,直接把 选中的值,设置为TextView的值。
整体代码如下:
在解决这个问题时,我碰到的问题:
1、我不知道,给Spinner添加的监听器,是哪个?习惯了用,View , DialogInterface 中的监听器,突然间要添加一个 OnItemSelectedListener 不知道在哪个包里!
事实上在这里:import android.widget.AdapterView.OnItemSelectedListener;
2、不知道,怎么去,拿当前值,后来在网上,查找后,发现有个 getSeletedItem() 方法,加上后,就OK了!
拿到Spinner的当前值,并把拿到的值,实时传递给TextView,然后,显示在TextView当中。
布局文件是这样的:
<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:orientation="vertical" > <Spinner android:id="@+id/spinner" android:layout_width="match_parent" android:layout_height="40dp" android:entries="@array/tools" /> <View android:layout_width="match_parent" android:layout_height="50dp" /> <TextView android:id="@+id/txt01" android:layout_width="match_parent" android:layout_height="40dp" android:text="hello world" /> </LinearLayout>
后来,经过黄老尸指点,终于找到了解决方案:
1、给Spinner添加一个监听器;
2、点击Spinner,选择值后,直接把 选中的值,设置为TextView的值。
整体代码如下:
package com.zhanggeng.spinnertest; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemSelectedListener; import android.widget.Spinner; import android.widget.TextView; public class MainActivity extends Activity { private Spinner sp; private TextView tv; private String str; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); sp = (Spinner) findViewById(R.id.spinner); tv = (TextView) findViewById(R.id.txt01); str = (String) sp.getSelectedItem(); sp.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { //拿到被选择项的值 str = (String) sp.getSelectedItem(); //把该值传给 TextView tv.setText(str); } @Override public void onNothingSelected(AdapterView<?> parent) { // TODO Auto-generated method stub } }); } }
在解决这个问题时,我碰到的问题:
1、我不知道,给Spinner添加的监听器,是哪个?习惯了用,View , DialogInterface 中的监听器,突然间要添加一个 OnItemSelectedListener 不知道在哪个包里!
事实上在这里:import android.widget.AdapterView.OnItemSelectedListener;
2、不知道,怎么去,拿当前值,后来在网上,查找后,发现有个 getSeletedItem() 方法,加上后,就OK了!
相关文章推荐
- Android NDK JNI: C++如何调用Java API传递字符串, 并将字符串显示到TextView.
- 如何用TextView显示Html格式的数据
- 如何将View转变成bitmap(2)(当前view不显示)
- 如何让TextView中的文字居中显示?
- TextView实时显示EditText输入的内容-----setOnKeyListener事件
- 阿拉伯语状态下TextView如何从右往左显示
- android自定义Spinner下拉菜单和AutoCompleteTextView自动显示的(下拉列表框)样式
- [绍棠] 如何获取顶部CollectionView当前显示的cell的indexPath.
- 如何在ViewPager外部获取“当前显示的页面的位置position”
- Android笔记:Android TextView实时显示系统时间
- android中textview设置为多行文本时,如何让文字从最顶开始显示
- android自定义Spinner下拉菜单和AutoCompleteTextView自动显示的(下拉列表框)样式
- 如何设置一个textview的文字显示为垂直居中,水平居左呢
- android 布局: LinearLayout如何使TextView中的内容居中显示
- Android UI如何让TextView中的文字居中显示
- Android中如何得知当前View中的EditText正在被编辑或改动,即如何检测EditText的焦点
- 如何在当前显示View中获取当前控制器
- 阿拉伯语状态下TextView如何从右往左显示
- iOS开发之如何用UITableView实时显示歌词
- 怎么获得当前TextView中显示的内容