首页 > 稀奇古怪的冷知识

android spinner(spinner在安卓什么意思)

Android中有没有比Spinner控件更好的选择

1.安装 NDK,下载android-ndk-r8e-windows-x86.zip,解压至本地(android-ndk-r8e-windows-x86_64.zip解压后不包含prebuilt文件夹,sample中的hello-jni运行报错)

2.配置环境变量$NDKROOT=android-ndk的文件夹路径

3.eclipse安装CDT插件,Eclipse->help->Install software,在”*ailable software sites”中选择相应的CDT路径,安装

4.下载最新的OpenCV for Anroid库OpenCV-2.4.4-android-sdk.zip,解压至本地

5.编译生成openCV的jar库文件

1)eclipse中导入OpenCV-2.4.4-android-sdk\sdk\j*a文件夹

2)添加openCV Library工程的C++工程属性,右键project名称->New->other->C/C++->Convert to a C/C++ Project(Adds C/C++ Nature)

3)为project配置ndk built路径。右键project->Properties->C/C++ build,设置Build command:${NDKROOT}/ndk-build.cmd; beh*ior选项中的不勾clean

4)编译工程,/bin文件夹下生成opencv library- 2.4.4.jar

6.在目标Adnroid应用程序中添加对opencv library- 2.4.4.jar的引用,便可以调用相应的open CV库函数了

android spinner怎么用

Spinner控件也是一种列表类型的控件,它的继承关系如下:

j*a.lang.Object

↳ Android.view.View

↳ android.view.ViewGroup

↳ android.widget.AdapterView<Textends android.widget.Adapter>

↳ android.widget.AbsSpinner

↳ android.widget.Spinner

android.widget.Spinner继承了android.view.ViewGroup类。

在Android的UI开发中,Spinner(下拉列表)总是可以用到的,一个简单的自定义Spinner制作我们只需要记住这重要的五步,一个Spinner就可以应用而生了。

(1)新建一个android工程,名称为Spinner。同时建一个Activity,名称为SpinnerActivity。

(2)修改res/layout/main.xml

[html] view plain copy

<?xml version=”1.0″ encoding=”utf-8″?>

<LinearLayout xmlns:android=””

android:orientation=”vertical”

android:layout_width=”fill_parent”

android:layout_height=”fill_parent”

>

<TextView

android:id=”@+id/TextView_city”

android:layout_width=”wrap_content”

android:layout_height=”wrap_content”

android:text=”所在城市:”

/>

<!–定义一个城市信息下拉菜单–>

<Spinner

android:id=”@+id/Spinner_city”

android:layout_width=”wrap_content”

android:layout_height=”wrap_content”>

</Spinner>

</LinearLayout>

(3)SpinnerActivity.j*a代码。

[j*a] view plain copy

package cn*;

import j*a.util.ArrayList;

import j*a.util.List;

import android.app.Activity;

import android.os.Bundle;

import android.view.MotionEvent;

import android.view.View;

import android.widget.AdapterView;

import android.widget.ArrayAdapter;

import android.widget.Spinner;

import android.widget.TextView;

public class SpinnerActivity extends Activity{

/** Called when the activity is first created.*/

private List<String> list= new ArrayList<String>();

private TextView myTextView;

private Spinner mySpinner;

private ArrayAdapter<String> adapter;

@Override

public void onCreate(Bundle s*edInstanceState){

super.onCreate(s*edInstanceState);

setContentView(R.layout.main);

//第一步:添加一个下拉列表项的list,这里添加的项就是下拉列表的菜单项

list.add(“北京”);

list.add(“上海”);

list.add(“深圳”);

list.add(“福州”);

list.add(“厦门”);

myTextView=(TextView)findViewById(R.id.TextView_city);

mySpinner=(Spinner)findViewById(R.id.Spinner_city);

//第二步:为下拉列表定义一个适配器,这里就用到里前面定义的list。

adapter= new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, list);

//第三步:为适配器设置下拉列表下拉时的菜单样式。

adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

//第四步:将适配器添加到下拉列表上

mySpinner.setAdapter(adapter);

//第五步:为下拉列表设置各种*的响应,这个事响应菜单被选中

mySpinner.setOnItemSelectedListener(new Spinner.OnItemSelectedListener(){

public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3){

// TODO Auto-generated method stub

/*将所选mySpinner的值带入myTextView中*/

myTextView.setText(“您选择的是:”+ adapter.getItem(arg2));

/*将mySpinner显示*/

arg0.setVisibility(View.VISIBLE);

}

public void onNothingSelected(AdapterView<?> arg0){

// TODO Auto-generated method stub

myTextView.setText(“NONE”);

arg0.setVisibility(View.VISIBLE);

}

});

/*下拉菜单弹出的内容选项触屏*处理*/

mySpinner.setOnTouchListener(new Spinner.OnTouchListener(){

public boolean onTouch(View v, MotionEvent event){

// TODO Auto-generated method stub

/**

*

*/

return false;

}

});

/*下拉菜单弹出的内容选项焦点改变*处理*/

mySpinner.setOnFocusChangeListener(new Spinner.OnFocusChangeListener(){

public void onFocusChange(View v, boolean hasFocus){

// TODO Auto-generated method stub

}

});

}

}

Android 怎么动态的设置Spinner联动

1.确定需要的数据放到res/values/arrays.xml文件(定义数组)

-省份-

河北省

山西省

北京市

-城市-

承德市

邯郸市

廊坊市

-城市-

海淀区

朝阳区

崇文区

-城市-

大同市

临汾市

2.编写xml界面res/values/main.xml文件(编写界面)

android:orientation=”vertical”

android:layout_width=”fill_parent”

android:layout_height=”fill_parent”

>

android:layout_width=”fill_parent”

android:layout_height=”wrap_content”

android:id=”@+id/textView”

/>

android:layout_width=”fill_parent”

android:layout_height=”wrap_content”

>

android:layout_width=”wrap_content”

android:layout_height=”wrap_content”

android:id=”@+id/province”

/>

android:layout_width=”wrap_content”

android:layout_height=”wrap_content”

android:layout_toRightOf=”@id/province”

android:id=”@+id/city”

/>

3.在Activity中实现省市联动功能

/**

*通过Spinner实现省市(两级)联动

*@author黑色天空

*/

public class MainActivity extends Activity{

private TextView textView;

private Spinner province;

private Spinner city;

/** Called when the activity is first created.*/

@Override

public void onCreate(Bundle s*edInstanceState){

super.onCreate(s*edInstanceState);

setContentView(R.layout.main);

//String[] provinces= new String[]{“-省份-“,”河北省”,”山西省”,”北京”};

textView=(TextView)this.findViewById(R.id.textView);

province=(Spinner)this.findViewById(R.id.province);

city=(Spinner)this.findViewById(R.id.city);

//(处理省的显示)

//将可选内容与ArrayAdapter的连接(从资源数组文件中获取数据)

ArrayAdapter adapter=

ArrayAdapter.createFromResource(this, R.array.province,

android.R.layout.simple_spinner_item);

//new ArrayAdapter(this,android.R.layout.simple_spinner_item,

provinces);

//设置下拉列表的风格

adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

//将数据绑定到Spinner视图上

province.setAdapter(adapter);

//添加条目被选中监听器

province.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener()

{

@Override

public void onItemSelected(AdapterView parent, View view,int position, long

id){

//parent既是province对象

Spinner spinner=(Spinner)parent;

String pro=(String)spinner.getItemAtPosition(position);

//(处理省的市的显示)

//将默认值与ArrayAdapter连接(从资源数组文件中获取数据)

ArrayAdapter cityAdapter= ArrayAdapter.createFromResource

(MainActivity.this, R.array.citydefault,

android.R.layout.simple_spinner_item);

//new ArrayAdapter

//(MainActivity.this,android.R.layout.simple_spinner_item, cities);

//获取所在省含有哪些市(从资源数组文件中获取数据)

if(pro.equals(“河北省”)){

cityAdapter= ArrayAdapter.createFromResource

(MainActivity.this, R.array.hb, android.R.layout.simple_spinner_item);

}else if(pro.equals(“北京市”)){

cityAdapter= ArrayAdapter.createFromResource

(MainActivity.this, R.array.bj, android.R.layout.simple_spinner_item);

}else if(pro.equals(“山西省”)){

cityAdapter= ArrayAdapter.createFromResource

(MainActivity.this, R.array.shx, android.R.layout.simple_spinner_item);

}

//绑定数据到Spinner(City)上

city.setAdapter(cityAdapter);

}

@Override

public void onNothingSelected(AdapterView parent){

}

});

}

}

本文链接:http://www.okyx8.com/html/87966557.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。