demo簡說幾種控制元件一
Android中控制元件很多,下面簡單的透過demo講解幾種常見的控制元件。這些控制元件都在android.widget.*這個包中,由於本人水平有限,不能夠總結的很全面,還請大家見諒,如果文章中出現錯誤,請大家指正,本人不甚感激!
1.ImageView,ImageButton
關於這兩個控制元件的詳細說明,請參考API文件,由於牆太高,普通的一些翻牆代理軟體不能進入android官方提供的API文件網頁,這裡提供的是國內的線上API查閱網址,關於翻牆方法這裡不多說~_~。
下面給出佈局檔案activity_main.xml中的程式碼:
MainActivity中的程式碼:
執行結果:
由上面的程式碼可知,點選第三張圖片時,退出當前Activity。上面只是簡單的一個demo,沒有更過的功能實現。更多的功能讀者可以根據文件提供的屬性設定。
2.TextView,EditText,Button:
下面還是透過一個簡單的demo來演示:
activity_main.xml中的程式碼:
上面簡單的實現一個兩個數相加的demo
MainActivity中的程式碼:
執行結果:
上面程式碼也比較簡單,這裡不過多介紹。
3.RadioGroup(單選按鈕),CheckBox多選(複選)框,Spinner(下拉選單框)
RadioGroup,CheckBox相對簡單,這裡不作敘述。下面透過在佈局檔案中和具體程式碼來實現Spinner:
MainActivity中的程式碼:
在下拉選單框中,要在資原始檔values/*中新建資原始檔:
books.xml:
city.xml:
language.xml:
執行結果:
由於時間倉促,本文只是簡單的透過demo感性的介紹這幾種控制元件,還有很多屬性沒有細說,後續會補充更過的細節。
關於這兩個控制元件的詳細說明,請參考API文件,由於牆太高,普通的一些翻牆代理軟體不能進入android官方提供的API文件網頁,這裡提供的是國內的線上API查閱網址,關於翻牆方法這裡不多說~_~。
下面給出佈局檔案activity_main.xml中的程式碼:
點選(此處)摺疊或開啟
-
<LinearLayout xmlns:android=""
-
xmlns:tools=""
-
android:layout_width="match_parent"
-
android:layout_height="match_parent"
-
android:paddingBottom="@dimen/activity_vertical_margin"
-
android:paddingLeft="@dimen/activity_horizontal_margin"
-
android:paddingRight="@dimen/activity_horizontal_margin"
-
android:paddingTop="@dimen/activity_vertical_margin"
-
android:orientation="vertical"
-
tools:context="com.example.activitytest.MainActivity" >
-
<TextView
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="@string/textt" />
-
<ImageView
-
android:id="@+id/imge1"
- android:scaleType="center" //保持原圖的大小,在ImageView的中心
-
android:layout_width="wrap_content"
-
android:layout_height="wrap_content" />
-
<ImageView
-
android:id="@+id/imge2"
-
android:scaleType=" fitStart"
-
android:layout_width="100dip //google建議畫素用dip
-
android:layout_height="100dip"
-
android:contentDescription="@string/sf"
- android:src="@drawable/png2" /> //圖片可以在這裡設定,也可以透過程式碼實現
-
-
<TextView
-
android:layout_width="wrap_content"
-
android:layout_height="wrap_content"
-
android:text="@string/imagebut" />
-
<ImageButton
-
android:id="@+id/image1"
-
android:contentDescription="@string/touxiang"
-
android:layout_height="wrap_content"
-
android:layout_width="wrap_content" />
-
<ImageButton
-
android:id="@+id/image2"
-
android:src="@drawable/png2"
-
android:contentDescription="@string/sf"
-
android:layout_height="wrap_content"
-
android:layout_width="wrap_content" />
-
- </LinearLayout>
點選(此處)摺疊或開啟
- public class MainActivity extends Activity {
-
private ImageView imag1;
-
private ImageView imag2;
-
private ImageButton imagbut1;
-
private ImageButton imagbut2;
-
@SuppressWarnings("unused")
-
private List<CharSequence> datalaguage;
-
@Override
-
protected void onCreate(Bundle savedInstanceState) {
-
super.onCreate(savedInstanceState);
-
setContentView(R.layout.activity_main);
-
imag1 = (ImageView)findViewById(R.id.imge1); //獲取圖片資源的id
-
imag2 = (ImageView)findViewById(R.id.imge2);
-
imagbut1 = (ImageButton)findViewById(R.id.image1);
-
imagbut2 = (ImageButton)findViewById(R.id.image2);
-
imag1.setImageResource(R.drawable.png1);//設定圖片資源
-
-
imag1.setContentDescription(getString(R.string.touxiang));//設定ContentDescription
-
imagbut1.setImageResource(R.drawable.png1);
-
imagbut1.setOnClickListener(new OnClickListener() {
-
-
@Override
-
public void onClick(View v) {
-
// TODO 自動生成的方法存根
-
finish();
-
}
- });
- }
- }
由上面的程式碼可知,點選第三張圖片時,退出當前Activity。上面只是簡單的一個demo,沒有更過的功能實現。更多的功能讀者可以根據文件提供的屬性設定。
2.TextView,EditText,Button:
下面還是透過一個簡單的demo來演示:
activity_main.xml中的程式碼:
點選(此處)摺疊或開啟
-
<LinearLayout xmlns:android=""
-
xmlns:tools=""
-
android:layout_width="match_parent"
-
android:layout_height="match_parent"
-
android:paddingBottom="@dimen/activity_vertical_margin"
-
android:paddingLeft="@dimen/activity_horizontal_margin"
-
android:paddingRight="@dimen/activity_horizontal_margin"
-
android:paddingTop="@dimen/activity_vertical_margin"
-
android:orientation="vertical"
-
tools:context="com.example.activitytest.MainActivity" >
-
-
<TextView
-
android:id="@+id/mytext"
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:gravity="center"
-
android:layout_gravity="center" />
-
-
<EditText
-
android:id="@+id/myedit1"
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:hint="@string/hint1" />
-
-
<EditText
-
android:id="@+id/myedit2"
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:hint="@string/hint2" />
-
-
<Button
-
android:id="@+id/mybut"
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content" />
-
- </LinearLayout>
MainActivity中的程式碼:
點選(此處)摺疊或開啟
-
public class MainActivity extends Activity {
-
private EditText edit1,edit2;
-
private TextView text;
- private Button but;
-
@SuppressWarnings("unused")
-
private List<CharSequence> datalaguage;
-
@Override
-
protected void onCreate(Bundle savedInstanceState) {
-
super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
-
text = (TextView)findViewById(R.id.mytext);
-
but = (Button)findViewById(R.id.mybut);
-
edit1 = (EditText)findViewById(R.id.myedit1);
-
edit2 = (EditText)findViewById(R.id.myedit2);
-
but.setOnClickListener(new OnClickListener() {
-
@Override
-
public void onClick(View v) {
-
// TODO 自動生成的方法存根
-
int ss1=Integer.parseInt(edit1.getText().toString());//轉換成int型別
-
int ss2=Integer.parseInt(edit2.getText().toString());//轉換成int型別
-
text.setText(String.valueOf(ss1+ss2));text.setText()接受的是String型別的引數,所以把相加後的int型別轉換成String型別
-
}
- });
- }
- }
-
上面程式碼也比較簡單,這裡不過多介紹。
3.RadioGroup(單選按鈕),CheckBox多選(複選)框,Spinner(下拉選單框)
點選(此處)摺疊或開啟
-
<LinearLayout xmlns:android=""
-
xmlns:tools=""
-
android:layout_width="match_parent"
-
android:layout_height="match_parent"
-
android:paddingBottom="@dimen/activity_vertical_margin"
-
android:paddingLeft="@dimen/activity_horizontal_margin"
-
android:paddingRight="@dimen/activity_horizontal_margin"
-
android:paddingTop="@dimen/activity_vertical_margin"
-
android:orientation="vertical"
-
tools:context="com.example.activitytest.MainActivity" >
-
-
<TextView
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="@string/text1"/>
-
-
<RadioGroup
-
android:id="@+id/myradio"
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:orientation="vertical"
-
android:checkedButton="@+id/button">
-
<RadioButton
-
android:id="@+id/button1"
-
android:text="@string/nan" />
-
<RadioButton
-
android:id="@+id/button2"
-
android:text="@string/nv" />
-
</RadioGroup>
-
-
<TextView
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="@string/text2" />
-
-
<RadioGroup
-
android:id="@+id/myradio2"
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:orientation="horizontal"
-
android:checkedButton="@+id/button2" >
-
-
<RadioButton
-
android:id="@+id/button3"
-
android:text="@string/beijing"/>
-
<RadioButton
-
android:id="@+id/button4"
-
android:text="@string/shanghai" />
-
-
</RadioGroup>
-
-
<TextView
-
android:id="@+id/boxtext"
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="@string/boxstr" />
-
-
<CheckBox
-
android:id="@+id/box1"
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="@string/km"
-
android:checked="true" />
-
-
<CheckBox
-
android:id="@+id/box2"
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="@string/hz" />
-
-
<CheckBox
-
android:id="@+id/box3"
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="@string/xm" />
-
<TextView
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="@string/booklist" />
-
<Spinner
-
android:id="@+id/spinner1"
-
android:prompt="@string/book"
-
android:layout_height="wrap_content"
-
android:layout_width="match_parent"
-
android:entries="@array/book" /> //引用資源條目時,需用array/xxx,具體看下面設定的array資原始檔
-
<TextView
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="@string/citylist" />
-
<Spinner
-
android:id="@+id/spinner2"
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:prompt="@string/citylist"/>
-
<TextView
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="@string/languagelist" />
-
<Spinner
-
android:id="@+id/spinner3"
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:prompt="@string/languagelist" />
- </LinearLayout>
MainActivity中的程式碼:
點選(此處)摺疊或開啟
- public class MainActivity extends Activity {
-
private Spinner spcity;
-
private Spinner splanguage;
-
private ArrayAdapter<CharSequence> adaptercity;
- private ArrayAdapter<CharSequence> adapterlaguage;
-
@SuppressWarnings("unused")
-
-
@Override
-
protected void onCreate(Bundle savedInstanceState) {
-
super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
-
spcity= (Spinner)findViewById(R.id.spinner2);
-
spcity.setPrompt("請選擇你喜歡的城市:");
-
adaptercity = ArrayAdapter.createFromResource(this,R.array.city,android.R.layout.simple_spinner_item);//程式碼設定下拉資源條目
-
adaptercity.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
-
spcity.setAdapter(adaptercity);
-
-
splanguage = (Spinner)findViewById(R.id.spinner3);
-
splanguage.setPrompt("請選擇你最喜愛的語言");
-
adapterlaguage = ArrayAdapter.createFromResource(this,R.array.language,android.R.layout.simple_spinner_item);
-
adapterlaguage.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
-
splanguage.setAdapter(adapterlaguage);
-
-
}
-
- }
books.xml:
點選(此處)摺疊或開啟
-
<?xml version="1.0" encoding="UTF-8"?>
-
<resources>
-
<string-array name="book">
-
<item>紅樓夢</item>
-
<item>水滸傳</item>
-
<item>西遊記</item>
-
<item>三國演義</item>
-
</string-array>
- </resources>
點選(此處)摺疊或開啟
-
<?xml version="1.0" encoding="UTF-8"?>
-
<resources>
-
<string-array name="city">
-
<item>合肥</item>
-
<item>蕪湖</item>
-
<item>馬鞍山</item>
-
</string-array>
- </resources>
點選(此處)摺疊或開啟
-
<?xml version="1.0" encoding="UTF-8"?>
-
<resources>
-
<string-array name="language">
-
<item>英語</item>
-
<item>漢語</item>
-
<item>法語</item>
-
</string-array>
- </resources>
由於時間倉促,本文只是簡單的透過demo感性的介紹這幾種控制元件,還有很多屬性沒有細說,後續會補充更過的細節。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29876893/viewspace-1872165/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 說一下幾種常用的前端快取前端快取
- 說說Java非同步呼叫的幾種方式Java非同步
- android獲取控制元件的幾種方法Android控制元件
- [Vuex系列] - 細說state的幾種用法Vue
- 面試官:說說你知道的幾種負載均衡分類面試負載
- 視錯覺:從一個看似簡單的自定義控制元件說起控制元件
- 簡單說幾個MySQL高頻面試題MySql面試題
- 仿微信錄音控制元件Demo控制元件
- 幾種設計模式簡介(轉載)設計模式
- 一個極簡版本的 VUE SSR demoVue
- 寫一個簡單的demo理解vuexVue
- android 控制元件點選水波紋效果的幾種方案Android控制元件
- 簡單給初學者說說JAVA語言的幾個特點Java
- linux繫結網路卡的幾種模式說明Linux模式
- 幾種常用設計模式的簡單示例設計模式
- 簡述幾種常用的排序演算法排序演算法
- 一個最簡單的WebSocket hello world demoWeb
- 關於SSM框架的一個簡單DemoSSM框架
- 一個簡單的介面測試框架 demo框架
- 分享幾個寫 demo 的思路
- 面試官問:ZooKeeper 有幾種節點型別?別再說 4 種啦!面試型別
- 先簡單說一說Java中的CopyOnWriteArrayListJava
- 簡單的websocket demoWeb
- PHP--簡單DemoPHP
- JavaScript中的幾種資料結構簡介JavaScript資料結構
- 簡單介紹redis加鎖常用幾種方式Redis
- 簡單瞭解JS中的幾種遍歷JS
- javascript非同步程式設計幾種方法簡介JavaScript非同步程式設計
- IOS幾種簡單有效的陣列排序方法iOS陣列排序
- WebBrowser 控制元件-說明Web控制元件
- DeWeb進階 :控制元件開發 --- 1 完成一個純html的demoWeb控制元件HTML
- 美團一面:說一說Java中的四種引用型別?Java型別
- 一種快速整合引導圖的控制元件控制元件
- Java中最流行的幾種業務規則引擎簡介Java
- 簡單介紹MySQL索引失效的幾種情況MySql索引
- js宣告陣列的幾種方式簡單介紹JS陣列
- React Demo Three - 簡書&掘金React
- Java NIO的簡單demoJava