㈠ 關於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
㈡ 如何設置 android gridview 怎麼設置 , 一些item可以點擊,另外.....
這個要在代碼中進行設置,基本上有兩種方式:
在GridView所在的 activity(或者fragment)中, 找到該View,監聽點擊事件:
java">gridView.setOnItemClickListener(newAdapterView.OnItemClickListener(){
@Override
publicvoidonItemClick(AdapterView<?>parent,Viewview,intposition,longid){
//點擊item觸發,進行判斷,如果需要處理點擊,就進行處理,否則,什麼也不做
if(/*處理點擊條件*/){
//要做的事
}
}
});
在自己寫的GridView對應的適配器中(一般繼承於BaseAdapter)的getView中進行判斷,如果是需呀處理的item, 就調用setOnClickListener,並定義相應的點擊事件,否則可以不綁定點擊事件。
㈢ android gridview怎麼用
GirdView的一些屬性:
android:numColumns="auto_fit" --------列數設置為自動
android:columnWidth="90dp",----------每列的寬度,也就是Item的寬度
android:stretchMode="columnWidth"------縮放與列寬大小同步
android:verticalSpacing="10dp"----------垂直邊距
android:horizontalSpacing="10dp"-------水平邊距
GridView(網格視圖)是按照行列的方式來顯示內容的,一般用於顯示圖片,圖片等內容,比如實現九宮格圖,用GridView是首選,也是最簡單的,
package com.example.testgridview;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.app.Activity;
import android.os.Bundle;
import android.widget.GridView;
import android.widget.SimpleAdapter;
public class MainActivity extends Activity {
private GridView gview;
private List<Map<String, Object>> data_list;
private SimpleAdapter sim_adapter;
// 圖片封裝為一個數組
private int[] icon = { R.drawable.address_book, R.drawable.calendar,
R.drawable.camera, R.drawable.clock, R.drawable.games_control,
R.drawable.messenger, R.drawable.ringtone, R.drawable.settings,
R.drawable.speech_balloon, R.drawable.weather, R.drawable.world,
R.drawable.youtube };
private String[] iconName = { "通訊錄", "日歷", "照相機", "時鍾", "游戲", "簡訊", "鈴聲",
"設置", "語音", "天氣", "瀏覽器", "視頻" };
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.test);
gview = (GridView) findViewById(R.id.gview);
//新建List
data_list = new ArrayList<Map<String, Object>>();
//獲取數據
getData();
//新建適配器
String [] from ={"image","text"};
int [] to = {R.id.image,R.id.text};
sim_adapter = new SimpleAdapter(this, data_list, R.layout.item, from, to);
//配置適配器
gview.setAdapter(sim_adapter);
}
public List<Map<String, Object>> getData(){
//cion和iconName的長度是相同的,這里任選其一都可以
for(int i=0;i<icon.length;i++){
Map<String, Object> map = new HashMap<String, Object>();
map.put("image", icon[i]);
map.put("text", iconName[i]);
data_list.add(map);
}
return data_list;
}
}
㈣ 關於Android上的gridview和checkbox問題。
看你的代碼,你可能是要在處理某個事件的時候,把所有選中行的內容拼起來。
import java.util.ArrayList;
import java.util.List;
public class Test {
class Entrty{
String label = "";
boolean isRealData = false;
boolean isCheckBox = false;
}
public void testa(){
/*
構造假數據
a b c 口
d e 口
*/
List<Entrty> data = new ArrayList<Entrty>();
Entrty e = new Entrty();
e.label = "a";
e.isRealData = true;
e.isCheckBox = false;
data.add(e);
e = new Entrty();
e.label = "b";
e.isRealData = true;
e.isCheckBox = false;
data.add(e);
e = new Entrty();
e.label = "c";
e.isRealData = true;
e.isCheckBox = false;
data.add(e);
e = new Entrty();
e.isRealData = false;
e.isCheckBox = true;
data.add(e);
e = new Entrty();
e.label = "d";
e.isRealData = true;
e.isCheckBox = false;
data.add(e);
e = new Entrty();
e.label = "e";
e.isRealData = true;
e.isCheckBox = false;
data.add(e);
e = new Entrty();
e.isRealData = false;
e.isCheckBox = false;
data.add(e);
e = new Entrty();
e.isRealData = false;
e.isCheckBox = true;
data.add(e);
String str = "";
for (int i = 0; i < data.size(); i++) {
Entrty entrty = data.get(i);
if(entrty.isCheckBox) {
for (int j = i - 3 ; j < i; j++) {
Entrty tmp = data.get(j);
if(tmp.isRealData) {
if(j != 0) {
str += "\n";
}
str += tmp.label;
}
}
}
}
System.out.println(str);
}
public static void main(String[] args) {
Test t = new Test();
t.testa();
}
}
這個小例子希望能幫助到你,
List<Entrty> data作為adapter的數據源
當entrty中isRealData 為true時為真實數據
當entrty中isRealData 為false時並且isCheckBox = true時為CheckBox,否則為空數據
這些判斷在adapter的getView中使用就可以確定該位置的視圖類型
㈤ .net中如何在GridView里放復選按鈕(ChekBox)以便批量刪除
1.編輯模版列,在<ItemTemplate>拖入一個CheckBox.
2.GridView綁定的時候指定他的DataKeyNames屬性,比如 GridView1.DataKeyNames = new string[] { "id" }; 如果是用數據源控制項綁定的,就DataKeyNames="id",加上這個屬性
3.protected void Button2_Click(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection("server=shen;database=沈軍輝;user id=sa;password=");
SqlCommand cmd;
for (int i = 0; i < GridView2.Rows.Count ; i++)
{
CheckBox cb = (CheckBox)GridView2.Rows[i].FindControl("CheckBox1");
if (cb.Checked == true)
{
cmd = new SqlCommand("delete from 學生 where 學號="+ GridView2.DataKeys[i].Value +"",conn);
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
}
}
bind();//刪除後重新綁定
}
㈥ 請問:想在GridView列表的表頭(header)里添加一個復選框。
添加模板類就行,類似這樣的
<asp:TemplateField HeaderStyle-Width="5%">
<HeaderTemplate>刪除</HeaderTemplate>
<ItemTemplate>
<asp:ImageButton ID="btnDel" Runat="server" ImageUrl="../Images/IconDelete.gif" CommandName="delete" OnClientClick="return confirm('確定刪除嗎?')">
</asp:ImageButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
後台里在事件中遍歷該控制項就可以!
</asp:TemplateField>
㈦ Android中 Gridview中添加多個checkbox,
那你用radiogroup好了呀,自定義下皮膚。。
㈧ 在GridView中添加ChenkBox 選中多個復選擇框,如何做多條刪除
給你個思路,首先每一行都加一個模板,扔checkbox進去,在整個頁面提交批量刪除的時候,循環檢查gridivew的每一列checkbox選擇狀態,將已選擇的行的datakey記錄下來,並以此將要刪除的內容保存到別的表後然後刪除。
㈨ Gridview裡面的屬性有哪些 都有什麼用
Gridview 是C#用戶界面表格控制項
具體屬性如下:
可查看msdn詳細介紹
具體屬性如下:
AllowsColumnReorder :獲取或設置一個值,該值指示 GridView 中的列是否可以通過拖放操作重新排序。
ColumnHeaderContainerStyle:獲取或設置應用於列標題的樣式。
ColumnHeaderContextMenu:獲取或設置 GridView 的 ContextMenu。
ColumnHeaderStringFormat:獲取或設置一個撰寫字元串,該字元串指定如果 GridView 的列標題顯示為字元串,應如何設置這些列標題的格式。
ColumnHeaderTemplate:獲取或設置用於顯示列標題的模板。
ColumnHeaderTemplateSelector:獲取或設置為選擇每個列標題所使用的模板提供邏輯的選擇器對象。
ColumnHeaderToolTip:獲取或設置當滑鼠指針懸停在某個列標題上時顯示的工具提示的內容。
Columns:獲取為此 GridView 定義的 GridViewColumn 對象的集合。
DefaultStyleKey:獲取 GridView 的默認樣式的引用。(替代 ViewBase.DefaultStyleKey。)
DependencyObjectType:獲取對此實例的 CLR 類型進行包裝的 DependencyObjectType。(從 DependencyObject 繼承。)
Dispatcher :獲取與此 DispatcherObject 關聯的 Dispatcher。(從 DispatcherObject 繼承。)
GridViewItemContainerStyleKey:獲取一個鍵,該鍵引用為 GridView 中的每個 ListViewItem 定義的樣式。
GridViewScrollViewerStyleKey:獲取一個鍵,該鍵引用為 ScrollViewer 控制項(該控制項包含 GridView 顯示的內容)定義的樣式。
GridViewStyleKey:獲取一個鍵,該鍵引用為 GridView 定義的樣式。
IsSealed:獲取一個指示此實例當前是否已密封 (只讀)的值。 (從 DependencyObject 繼承。)
ItemContainerDefaultStyleKey:獲取對 GridView 中數據項的容器的默認樣式的引用。(替代 ViewBase.ItemContainerDefaultStyleKey。)