android下拉框
㈠ android 里怎麼用adapter寫下拉菜單選擇
所使用的工具:電腦
開發工具:eclipse for Android , Android Studio
用adapter 寫下拉菜單需要我們自己進行自定義,具體步驟如下:
1、自定義類,類成員與需要顯示的欄位一致;
java">publicclassManufacture{
privateStringname;
publicManufacture(Stringname){
super();
this.name=name;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
}
2、自定義adapter並繼承自BaseAdapter實現相應方法,下面是貼出的代碼示例:
{
privateList<Manufacture>mList;
privateContextcontext;
//創建有參構造,參數需要傳入兩個1.自定義類類型的List,上下文參數
publicMnufactureAdapter(List<Manufacture>mList,Contextcontext){
super();
this.mList=mList;
this.context=context;
}
//返回長度位所定義List的長度
@Override
publicintgetCount(){
returnmList.size();
}
//返回位置為自定義list當前位置
@Override
publicObjectgetItem(intposition){
returnmList.get(position)
;
}
//返回條目的ID
@Override
publiclonggetItemId(intposition){
returnposition;
}
//這里getView需方法需要重點說明和注意:
@Override
publicViewgetView(intposition,ViewconvertView,ViewGroupparent){
//創建一個LayoutInflater並傳入上下文
LayoutInflaterlinflater=LayoutInflater.from(context);
//添加自定義item布局到convertView;(item內容和樣式通過自定義方式實現)
convertView=linflater.inflate(R.layout.spinner_item_layout,null);
//初始化Item中控制項
TextViewtextView=(TextView)convertView.findViewById(R.id.manufacture_list);
//設置控制項顯示內容
textView.setText(mList.get(position).getName());
returnconvertView;
}
}
3、在activity中需要添加如下代碼:
//初始化布局文件中的spinner
SpinnermSpinner=(Spinner)findViewById(R.id.spinner1);
//初始化自定義的List,並往裡面添加數據
List<Manufacture>manufacture=newArrayList<Manufacture>();
接著就是添加數據,在項目中我是添加的從網路上下載的數據解析之後進行添加的,具體的添加方式根據具體需要進行添加,我把自己的貼在下面供大家參考:
for(inti=0;i<list.size();i++){
//添加數據源
manufacture.add(newManufacture(list.get(i).getName()));
}
//實例化一個之前自定義的adapter並向裡面添加數據
MnufactureAdaptermadapter=newMnufactureAdapter(manufacture,ProctManageActivity.this);
參數說明:第一個參數是添加數據源後的List,第二個是當前activity的上下文。
最後一步,向spinner裡面添加數據源
mSpinner.setAdapter(madapter);
㈡ android 怎麼在spinner下拉框背景
Spinner控制項也是一種列表類型的控制項,它的繼承關系如下:
Java.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就可以應用而生了。
㈢ 安卓下拉框的問題
2.3 系統也有N多定製的地方。 各不相同。
這個軟體好像叫 」cyanogenmod「
如果找不到的話。 弄個「七鍵開關」從小部件里調出來。
放到桌面上就行了 也有藍牙 wifi 衛星 2G gprs 等
那個我也用過。 用了一段時間就不覺得好了
㈣ 在Android應用中怎樣實現時間選擇下拉菜單
你找到Sudoku中的 private void startGame(int i){ Log.d(TAG, "clicked on" + i); Intent intent = new Intent(Sudoku.this,Game.class); intent.putExtra(Game.KEY_DIFFICULTY, i); startActivity(intent);...
㈤ 如何打造Android自定義的下拉列表框控制項
實現方式:
1、水平布局一個TextView和一個ImageView(小黑箭頭)
2、實現點擊ImageView的單擊事件,彈出PopupWindow
3、PopupWindow中實現下拉列表
關鍵代碼示例:
1、布局
<LinearLayout android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<TextView/>
<ImageView />
</LinearLayout>
2、單擊事件
image.setBackgroundResource(R.drawable.gerendang_jiantou);
image.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
//彈出popupwindow
}
});
3、pupupwindow相關代碼
ListView lv = new ListView(this);
adapter = new OptionsAdapter(context, datas); // 根據數據,設置下拉框顯示
list.setAdapter(adapter);
/**
* 兩種不同長度的下拉框,主要是為了適應屏幕的大小
*/
if (p_width > 0) {
pWindow = new PopupWindow(v, par.getWidth(), 150);
} else {
pWindow = new PopupWindow(v, par.getWidth(), 300);
}
pWindow.setFocusable(true); //能夠焦點獲得
pWindow.setBackgroundDrawable(new BitmapDrawable()); //設置背景
pWindow.setOutsideTouchable(true); //外部點擊關閉
pWindow.update(); //更新位置
㈥ android下拉列表框能自己輸入內容嗎
android 下拉列表框是不允許輸入內容,可以通過代碼的形式進行填充數據。
㈦ android 下拉列表
Android的下拉列表是用Spinner 這個類來實現的。
Spinner的使用(分別使用ArrayAdapter和自定義Adapter實現),使用ArrayAdapter進行適配數據:
1:首先定義一個布局文件:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<Spinner
android:id="@+id/spinner1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
2:建立數據源,使用數組,這些數據將會在Spinner下來列表中進行顯示:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="spinnername">
<item>北京</item>
<item>上海 </item>
<item>廣州</item>
<item>深圳</item>
</string-array>
</resources>
3:接著在Activity中加入如下的代碼(使用了系統定義的下拉列表的布局文件,當然也可以自定義)
// 初始化控制項
mSpinner = (Spinner) findViewById(R.id.spinner1);
// 建立數據源
String[] mItems = getResources().getStringArray(R.array.spinnername);
// 建立Adapter並且綁定數據源
ArrayAdapter<String> _Adapter=new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, mItems);
//綁定 Adapter到控制項
mSpinner.setAdapter(_Adapter);
㈧ Android Java文件中獲取下拉菜單的中用戶選擇的值 求大佬
在安卓客戶端需要添加下拉框,供用戶選擇他們需要填寫的選項。
如果使用資源文件把選項寫死的話,只有text一種形式可選,局限太大,因此如果要實現 value - text 這種形式的話,需要單獨寫一個類 SpinnerOption.java 。
1. 布局文件
<Spinner
android:id="@+id/town_sp"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
2. 下拉框選項實體 SpinnerOption.java,在Spinner中顯示選項的時候,默認會顯示每個項(Object)的 toString() 之後的內容,因此重寫 toString() 方法,讓它輸出 text 。
publicclassSpinnerOption{
privateStringvalue="";
privateStringtext="";
publicSpinnerOption(){
value="";
text="";
}
publicSpinnerOption(Stringvalue,Stringtext){
this.value=value;
this.text=text;
}
@Override
publicStringtoString(){
returntext;
}
publicStringgetValue(){
returnvalue;
}
publicStringgetText(){
returntext;
}
}
3. Fragment中:
ArrayList<SpinnerOption>towns;
//准備好下拉框內容
towns=newArrayList<SpinnerOption>();
for(inti=0;i<18;i++){
SpinnerOptionc=newSpinnerOption(i+"",i+"鎮");
towns.add(c);
}
townSp=(Spinner)view.findViewById(R.id.town_sp);
//設置Adapter
ArrayAdapter<SpinnerOption>townAdapter=newArrayAdapter<SpinnerOption>(getActivity(),android.R.layout.simple_spinner_item,towns);
townAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
townSp.setAdapter(townAdapter);
//取下拉框的值
postData.put("townId",((SpinnerOption)townSp.getSelectedItem()).getValue());
在取值時要注意,getSelectedItem()得到的是籠統的Object對象而已,還需要把它轉換類型為SpinnerOption類才能取值。
完成之後的效果:
㈨ Android之Button 和下拉菜單的結合
只要涉及到下拉列表等的 就要用到數組Array:
adapter=new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item,countries);
spinner.setAdapter(adapter);//把你要顯示的列表信息附加到spinner中,
public void onClick(View v)//(View v)這個是什麼意思:你的單擊事件,里邊的view指你所單擊的View對象
arg0.setVisibility(View.VISIBLE);//設置屬性,可讀不可讀,可用不可用等;
你要實現在選擇下拉菜單中的內容時不顯示到Textview中,單擊Button後才顯示 你可以在選擇的監聽事件setOnItemSelectedListener中:
textview2.setText("你的血型是:"+countries[arg2]);//textview2顯示下拉列表內容 能不能選擇後不顯示在我點button後再在textview2中顯示出來
換成:新建的一個String類型比如str來保存這個信息
str="你的血型是:"+countries[arg2]
在OnClicklistener單擊事件的時候把它顯示出來唄:
public void onClick(View v)//(View v)這個是什麼意思
{
textview.setText("文本框中內容:"+edittext.getText().toString());
textview2.setText(str);
}
希望對你能有所幫助
㈩ Android下拉框綁定數據
報下拉框載入失敗說明是json解析錯誤,看看伺服器返回的數據結構,再比對你的解析邏輯,看看哪裡有問題