android Spinner的简单demo(用到BaseAdapter)

来源:互联网 发布:windows资源管理器占用 编辑:程序博客网 时间:2024/06/08 17:44
package com.example.spinnerdemo;import android.app.Activity;import android.graphics.Color;import android.os.Bundle;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.ImageView;import android.widget.LinearLayout;import android.widget.Spinner;import android.widget.TextView;/** * Spinner 是 ViewGroup的间接子类 可以做容器 *  */public class MainActivity extends Activity {private int[] mImages = { R.drawable.bomb5, R.drawable.bomb6,R.drawable.bomb7, R.drawable.bomb8, R.drawable.bomb9 };private String[] mText = { "疯狂的 Android 讲义", "疯狂的 Java 讲义","疯狂的 Python 讲义", "疯狂的 XML 讲义", "疯狂的 HTML 讲义", };@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Spinner spinner = (Spinner) findViewById(R.id.spinner);BaseAdapter baseAdapter = new BaseAdapter() {@Overridepublic int getCount() {return 5;}@Overridepublic Object getItem(int arg0) {return null;}@Overridepublic long getItemId(int arg0) {return 0;}@Overridepublic View getView(int pos, View arg1, ViewGroup arg2) {LinearLayout liner = new LinearLayout(MainActivity.this);liner.setOrientation(LinearLayout.HORIZONTAL);ImageView image = new ImageView(MainActivity.this);image.setImageResource(mImages[pos]);TextView textView = new TextView(MainActivity.this);textView.setText(mText[pos]);textView.setTextColor(Color.BLACK);liner.addView(image);liner.addView(textView);return liner;}};spinner.setAdapter(baseAdapter);}}


查了下getView:

getView
View getView(int position,
             View convertView,
             ViewGroup parent)

Get a View that displays the data at the specified position in the data set. You can either create a View manually or inflate it from an XML layout file. When the View is inflated, the parent View (GridView, ListView...) will apply default layout parameters unless you use LayoutInflater.inflate(int, android.view.ViewGroup, boolean) to specify a root view and to prevent attachment to the root. 


参数:
position - The position of the item within the adapter's data set of the item whose view we want.
convertView - The old view to reuse, if possible. Note: You should check that this view is non-null and of an appropriate type before using. If it is not possible to convert this view to display the correct data, this method can create a new view.
parent - The parent that this view will eventually be attached to 
返回:
A View corresponding to the data at the specified position.


实现效果:


0 0
原创粉丝点击