㈠ android spinner默認什麼都不選擇
項目開發中經常有些變態的需求,比如要求spinner默認不選中任何一項。
如果你自定義spinner,那這個當然不是問題;也可以在原有的選項列表中開頭增加一項空字元串項,默認顯示這個空字元串也達到了效果,不過採用這種方式需要你在獲取被選擇項的位置時忽略空字元串項。
經過一番摸索,發現我們只要保證 spinner第一次展示時不顯示即可,相關代碼如下:
boolean isSpinnerFirst = true ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main) ;
Spinner spinner = (Spinner)findViewById(R.id.spinner) ;
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
if (isSpinnerFirst) {
//第一次初始化spinner時,不顯示默認被選擇的第一項即可
view.setVisibility(View.INVISIBLE) ;
}
isSpinnerFirst = false ;
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
}) ;
}
㈡ 關於android開發spinner顯示的問題
spinner顯示項的數據可以是String[],也可以是arrayList。你要做的就是數據項最開始里加上一列,spinner會默認選中第一項。。。或者使用spinner.setSelection(XXX)為他設置選中項。。。
㈢ android spinner怎麼用
android中的spinner控制項是表示下拉菜單的意思,按照如下步驟使用:
1、首先使用Android studio創建一個項目,如下圖:
4、最後去類中綁定控制項,並添加數據即可使用。
㈣ 關於Android界面組件的基本用法
1.文本框(TextView)和編輯框(EditText)
文本框(TextView)不允許用戶編輯文本內容,而編輯框(EditText)允許用戶編輯文本內容
2.按鈕(Button)和圖片按鈕(ImageButton)
Button顯示文字,ImageButton顯示圖片。
為ImageButton指定android:text屬性沒用,不會顯示文字
可以指定android:background為按鈕增加背景圖片,但這圖片是固定的
可以指定android:src為圖片按鈕增加圖片屬性
其實,src才是設置圖標,而background只是設置背景。
如果控制項的大小是100 100 圖片資源是80 80的話,那麼用src,圖片就會居中顯示,如果使用background那麼圖片就會被拉伸充滿控制項。
重要的是,background是底層的圖片資源,src是覆蓋在background上面的資源,他們可以疊加使用,實現選中的效果。
3.單選按鈕(RadioButton)和復選框(CheckBox)
多了一個android:checked屬性,用於指定初始時是否被選中
4.計時器組件Chronometer用法
紅色字體表示常用的方法
5.圖像視圖(ImageView)
它支持屬性android:scaleType setScaleType(ImageView.ScaleType)
matrix(ImageView.ScaleType.MATRIX):使用matrix方式進行
fixXY(ImageView.ScaleType.FIX_XY):對圖片橫向縱向獨立縮放,會改變縱橫比
fitStart(ImageView.ScaleType.FIT_START):保持縱橫比,圖片較長的邊長與ImageView相應的邊長相等,縮放後放在左上角
fitCenter(ImageView.ScaleType.FIT_CENTER):保持縱橫比,圖片較長的邊長與ImageView相應的邊長相等,縮放後放在中央
fitEnd(ImageView.ScaleType.FIT_END):保持縱橫比,圖片較長的邊長與ImageView相應的邊長相等,縮放後放在右下角
center(ImageView.ScaleType.CENTER):放中間,不縮放
centerCrop(ImageView.ScaleType.CENTER_CROP):保持縱橫比,使圖片能完全覆蓋ImageView
centerInside(ImageView.ScaleType.CENTER_INSIDE):保持縱橫比,使ImageView能完全顯示圖片
6.spinner的功能和用法
如果可以確定spinner裡面的列表項,那麼直接在/res/layout/main.xml裡面指定
然後在/res/value/string.xml裡面指定
如果不確定裡面的列表項,那麼必須要提供一個Adapter,這個Adapter負責決定Spinner列表每項的內容
7.日期、時間選擇器(DatePicker和TimePicker)
8.自動完成文本框(AutoCompleteTextView)
比普通文本框多了一個功能:當用戶輸入一定字元後,自動完成文本框會顯示一個下拉菜單,供用戶從中選擇,當用戶選擇某個菜單後,組件會按用戶選擇自動填寫該文本框
使用該組件很簡單,只要為它設置一個Adapter,該Adapter封裝了AutoCompleteTextView預設的提示文本
9.進度條(ProgressBar)
通過style屬性可以為ProgressBar指定風格。該屬性可以有如下的屬性值:
1.@android:style/Widget.ProgressBar.Horizontal 水平進度條
2.@android:style/Widget.ProgressBar.Inverse 不斷跳躍、旋轉畫面的進度條
3.@android:style/Widget.ProgressBar.Large 大進度條
4.@android:style/Widget.ProgressBar.Large.Inverse不斷跳躍、旋轉畫面的大進度條
5.@android:style/Widget.ProgressBar.Small 小進度條
6.@android:style/Widget.ProgressBar.Small.Inverse不斷跳躍、旋轉畫面的小進度條
ProgressBar提供如下方法來操作進度
1.setProgress(int) 設置進度的完成百分比
2.incrementProgressBy(int) 設置進度條的增加或減少。參數為正增加,參數為負減少
10.選項卡(TabHost)
TabHost僅僅只是一個簡單的容器,它提供如下方法
1.newTabSpec(String tag) 創建選項卡
2.addTab(TabHost.TabSpec tabSpec) 添加選項卡
使用TabHost的一般步驟為:
• A. 在界面中定義TabHost組件,並為該組件定義該選項卡的內容
• B. Activity應該繼承TabActivity
• C. 調用TabActivity的getTabHost()來獲取TabHost對象
• D. 通過TabHost對象的方法來創建選項卡、添加選項卡
選項卡主要由TabHost、TabWidget、FrameLayout3個組件組成,三者缺一不可,想像一下選項卡的特點,多個卡重疊在一起,所以用FrameLayout即幀布局是必要的。另外需要注意的是TabHost、TabWidget、FrameLayout三個組件的android:id必須使用系統默認的名稱,而不能自己隨意定義,否則會出錯。
11.圖像切換器(ImageSwitcher)
12.網格視圖(GridView)
使用GridView一般指定numColumn大於1,否則取默認值為1.那麼GridView就變成了ListView
屬性android:stretchMode支持如下屬性
1.none 不拉伸
2.spacingWidth 僅拉伸元素之間的間距
3.spacingWidthUniform 表格、元素之間的間距一起拉伸
4.columnWidth 僅拉伸表格
13.畫廊視圖(Gallery)(現在已經被棄用了,不過還是列出來吧)
Gallery用法很簡單——為它提供一個內容Adapter,該Adapter的getView方法所返回的View可作為Gallery的列表項。可以通過OnItemSelectedListener監聽選擇項的改變
14.列表試圖(ListView和ListActivity)
1.創建ListView由兩種方式:
2.直接使用ListView進行創建
讓Activity繼承ListActivity(繼承了ListActivity的類無需調用setContentView()來顯示頁面,可以直接設置適配器)
一旦獲得ListView後,就要創建顯示的列表項了。需要藉助內容Adapter,內容Adapter負責提供需要顯示的列表項
創建ArrayAdapter時必須指定一個textViewResourceId,該參數決定每個列表項的外觀
1.simple_list_item_1 每個列表項是普通的TextView
2.simple_list_item_2 每個列表項是普通的TextView(字體略大)
3.simple_list_item_checked 每個列表項是已勾選的列表項
4.simple_list_item_multiple_choice 每個列表項是帶多選框的文本
5.simple_list_item_single_choice 每個列表項是帶多單選按鈕的文本
15.使用AlertDialog
1.創建AlertDialog.Builder對象,該對象是AlertDialog的創建器
2.調用AlertDialog.Builder方法為對話框設置圖標、標題等
3.調用AlertDialog.Builder的create()方法創建AlertDialog對話框
4.調用AlertDialog的show()方法顯示對話框
16.使用Toast顯示提示框
步驟如下:
• 調用Toast構造器或makeText方法創建Toast對象
• 調用Toast方法來設置該消息的對齊方式等
• 調用Toast的show()方法顯示出來
• Toast toast = Toast.makeText(ToastTest.this, "信息", Toast.LENGTH_LONG).show();
17.Notification(一般顯示網路狀態、電池狀態、時間等)
使用Notification發送Notification步驟:
• 調用getSystemService(NOTIFICATION_SERVICE)方法獲取系統的Notification Manager服務
• 通過構造器創建一個Notification對象
• 為Notification設置屬性
• 通過Notification Manager發送Notification