當前位置:首頁 » 安卓系統 » android常用的控制項

android常用的控制項

發布時間: 2022-09-08 18:53:30

A. 最新的Android控制項有哪些

1.MaterialStepperView
它是用Material Design實現Steppers的。

目前,Stepper只有垂直視圖,但將來會有更多的風格。你可以嘗試一下,如下圖:
你可以自定義normal/active兩個狀態的顏色,完成圖標,開啟動畫並設置動畫時長。可通過Github上的設置項和樣式查閱所有設置項。該庫支持API 17+,詳情請查閱wiki文檔。

2. MultiSnapRecyclerView
這是分屏滾動的Android庫。
MultiSnapRecyclerView為RecyclerView提供了分屏功能。

目前提供的功能有:
start, end和center三個位置的吸附,
snap count 指定要分屏的數量,
支持水平和垂直分屏,
滾動時的回調。
3. Garland View for Android
該庫可實現如下的布局:

GarlandView 外部是一個水平滾動的視圖,視圖內的每一個子視圖可垂直滾動。
你可以在README中找到其他重要信息。還有一個示例App。該庫支持API 19及更高版本。
4. VegaLayoutManager
這是一個自定義的布局管理器——滾動時縮小並淡出頭部。這是受到Dribble項目的啟發。

5. ExpandableLayout
這個庫的名字不言而喻,它是一個基於LinearLayout的可擴展的布局。
README里含有你啟動時需要的所有信息,另外,還有一個示例App可以幫助你快速跳轉到代碼中。
6. SwipeBackLayout
SwipeBackLayout允許你使用手勢返回上一個界面。
你可以設置滑動方向,如從左到右、從右到左、從頂部到底部、從底部到頂部。
你還可以設置是否只能從邊緣滑動。
SwipeBackLayout只能包含一個子布局,例如:
LinearLayout,RelativeLayout,FrameLayout,TableLayout等。
ScrollView,HorizontalScrollView,NestedScrollView等。
RecyclerView,AbsListView(ListView)等子類。
ViewPager,WebView等。
該項目裡面有一個詳細說明的文檔、示例APP和一個APK。

B. Android中的自定義控制項

        組合控制項:即由原生控制項拼裝而成,不需要自己實現或者繪制具體的頁面內容和效果,常用於標題欄TitlleView

        eg:

        繼承控制項的意思就是,我們並不需要自己重頭去實現一個控制項,只需要去繼承一個現有的控制項,然後在這個控制項上增加一些新的功能,就可以形成一個自定義的控制項了。這種自定義控制項的特點就是不僅能夠按照我們的需求加入相應的功能,還可以保留原生控制項的所有功能。

熟悉view的繪制原理

1.measure用來測量View的寬和高。 

2.layout用來確定View在父容器中放置的位置。 

3.draw用來將view繪制在屏幕上

C. android界面開發常用的控制項有哪些

控制項開發大致分為兩種: 1.組合式開發。將幾個android現成的控制項,如ImageView,Button等糅合在一起。 2.單獨開發。一般繼承View,然後重寫其onDraw和onMeasure等方法。若是ViewGroup,則還需重寫measureChildren等。 上面說的是2D控制項。3D則需繼承SurfaceView。

D. Android中的幾種控制項講解

控制項:是編程中使用的,比如按鈕、窗口等都是控制項。組件:是軟體的一部分.軟體的組成部分,控制項是具有用戶界面功能的組件.

E. android列表常用控制項有哪些

一、概述 Android中的有個原生的下拉列表控制項Spinner,但是這個控制項有時候不符合我們自己的要求, 比如有時候我們需要類似windows 或者web網頁中常見的那種下拉列表控制項,類似下圖這樣的: 這個時候只有自己動手寫一個了。其實實現起來不算很難, 本文實現的方案是採用TextView +ImageView+PopupWindow的組合方案。 先來看看我們的自己寫的控制項效果圖吧:(源碼在文章下面最後給出哈!) 二、自定義下拉列表框控制項的實現 1. 自定義控制項用到的布局文件和資源: 結果框的布局頁面:dropdownlist_view.xml: <?xml version="1.0" encoding="utf-8"?>

F. android中listview怎麼用

創建繼承BaseAdapter並實現其抽象方法的類MyListViewAdapter
說明
下面的講解中,只創建自定義的適配器類,如何使用請參考android中常用控制項的使用之ListView
1.創建類MyListViewAdapter
創建類MyListViewAdapter,該類繼承BaseAdapter,並實現其抽象方法:
1
2
3
4

int getCount();
Object getItem(int position);
long getItemId(int position);
View getView(int position,View convertView,ViewGroup parent);

getCount需要返回有多少個item,也就是說最會在listview中展示這么多行
getItem需要返回參數position位置的數據
getItemId返回position就行了
2.給MyListViewAdapter類添加成員變數和構造方法
兩個成員變數
1
2

List<String> list;
Context context;

list表示要顯示的數據,context變數在生成View對象時需要用到
構造方法:構造方法是為了給兩個成員變數賦值
1
2
3
4

public MyListViewAdapter(List<String> list , Context context) {
this.list = list;
this.context = context;
}

3.給getCount,getItem,getItemId方法添加代碼
getCount需要返回有多少個item,也就是說最會在listview中展示這么多行,所以返回list.size
getItem需要返回參數position位置的數據,也就是list中第position項的值list.get(position)
getItemId返回position就行了
1
2
3
4
5
6
7
8
9
10
11
12
13
14

@Override
public int getCount() {
return list.size();
}

@Override
public Object getItem(int position) {
return list.get(position);
}

@Override
public long getItemId(int position) {
return position;
}

4.給getView方法添加代碼
getView方法是返回位置為position的View對象,第二個參數convertView考慮到資源重用問題,在上下滑動的過程中,需要顯示某項的時候才會調用getView方法,而如果有某項被隱藏不顯示,就會把不顯示那一行的View作為convertView參數傳入,如果沒有某項被隱藏,convertView值為null。可以通過下面代碼中的if(convertView!=null)中的輸出來看哪一行被隱藏了。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

@Override
public View getView(int position, View convertView, ViewGroup parent) {
System.out.println("調用getView方法,顯示position="+position+"項");
if(convertView!=null){
TextView t = (TextView) convertView.findViewById(R.id.firstTextView);
System.out.println(t.getText());
}else{
LayoutInflater layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = layoutInflater.inflate(R.layout.item_mylistviewadapter, null);
}
TextView t = (TextView)(convertView.findViewById(R.id.firstTextView));
t.setText(list.get(position));
if(position%2==0)
{
t.setBackgroundColor(Color.WHITE);

}
else{
t.setBackgroundColor(Color.GRAY);
}
return convertView;
}

補充:通過xml生成View對象
通過Context對象生成一個LayoutInflater對象
調用LayoutInflater對象的inflate方法生成控制項對象,inflate方法的第一個參數為xml文件,第二個參數一般為null。返回值為該xml文件最外層的標簽對象。
1
2

LayoutInflater layoutInflater =(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
LinearLayout convertView =(LinearLayout)layoutInflater.inflate(R.layout.item_mylistvie

源代碼下載
pan..com/s/1ntuQDdv

G. Android常用控制項

是longclick響應,你在要設置長按響應的view上實現OnLongClickListener介面就行了。至於彈出什麼菜單是你自己決定的,可以是alterdialog也可以是別的。

H. 關於Android TextView

android系統的文本視圖的意思。
TextView是android裡面用的最多的控制項,TextView類似一般UI中的Label,TextBlock等控制項,只是為了單純的顯示一行或多行文本。TextView作為android開發中最簡單也最常用的控制項,作為初學者,需要熟知其屬性並熟練掌握。
android:cursorVisible設定游標為顯示/隱藏,默認顯示。
android:digits設置允許輸入哪些字元。如「1234567890.+-*/% ()」
android:drawableBottom在text的下方輸出一個drawable,如圖片。如果指定一個顏色的話會text的背景設為該顏色,並且同時和background使用時覆蓋後者。
android:drawableLeft在text的左邊輸出一個drawable,如圖片。
android:drawablePadding設置text與drawable(圖片)的間隔,與drawableLeft、 drawableRight、drawableTop、drawableBottom一起使用,可設置為負數,單獨使用沒有效果。
android:drawableRight在text的右邊輸出一個drawable。
android:drawableTop在text的正上方輸出一個drawable。
android:editable設置是否可編輯。
android:editorExtras設置文本的額外的輸入數據。
android:ellipsize設置當文字過長時,該控制項該如何顯示。有如下值設置:」start」—-省略號顯示在開頭;」end」 ——省略號顯示在結尾;」middle」—-省略號顯示在中間;」marquee」 ——以跑馬燈的方式顯示(動畫橫向移動)
android:freezesText設置保存文本的內容以及游標的位置。
android:gravity設置文本位置,如設置成「center」,文本將居中顯示。
android:hintText為空時顯示的文字提示信息,可通過textColorHint設置提示信息的顏色。此屬性在 EditView中使用,但是這里也可以用。
android:imeOptions附加功能,設置右下角IME動作與編輯框相關的動作,如actionDone右下角將顯示一個「完成」,而不設置默認是一個回車符號。這個在EditView中再詳細說明,此處無用。
android:imeActionId設置IME動作ID。
android:imeActionLabel設置IME動作標簽。
android:includeFontPadding設置文本是否包含頂部和底部額外空白,默認為true。
android:inputMethod為文本指定輸入法,需要完全限定名(完整的包名)。
android:inputType設置文本的類型,用於幫助輸入法顯示合適的鍵盤類型。在EditView中再詳細說明,這里無效果。
android:linksClickable設置鏈接是否點擊連接,即使設置了autoLink。
android:marqueeRepeatLimit在ellipsize指定marquee的情況下,設置重復滾動的次數,當設置為 marquee_forever時表示無限次。
android:ems設置TextView的寬度為N個字元的寬度。這里測試為一個漢字字元寬度
android:maxEms設置TextView的寬度為最長為N個字元的寬度。與ems同時使用時覆蓋ems選項。
android:minEms設置TextView的寬度為最短為N個字元的寬度。與ems同時使用時覆蓋ems選項。
android:maxLength限制顯示的文本長度,超出部分不顯示。
android:lines設置文本的行數,設置兩行就顯示兩行,即使第二行沒有數據。
android:maxLines設置文本的最大顯示行數,與width或者layout_width結合使用,超出部分自動換行,超出行數將不顯示。
android:minLines設置文本的最小行數,與lines類似。
android:lineSpacingExtra設置行間距。
android:lineSpacingMultiplier設置行間距的倍數。如」1.2」
android:numeric如果被設置,該TextView有一個數字輸入法。此處無用,設置後唯一效果是TextView有點擊效果,此屬性在EdtiView將詳細說明。
android:password以小點」.」顯示文本
android:phoneNumber設置為電話號碼的輸入方式。
android:privateImeOptions設置輸入法選項,此處無用,在EditText將進一步討論。
android:scrollHorizontally設置文本超出TextView的寬度的情況下,是否出現橫拉條。
android:selectAllOnFocus如果文本是可選擇的,讓他獲取焦點而不是將游標移動為文本的開始位置或者末尾位置。 TextView中設置後無效果。
android:shadowColor指定文本陰影的顏色,需要與shadowRadius一起使用。
android:shadowDx設置陰影橫向坐標開始位置。
android:shadowDy設置陰影縱向坐標開始位置。
android:shadowRadius設置陰影的半徑。設置為0.1就變成字體的顏色了,一般設置為3.0的效果比較好。
android:singleLine設置單行顯示。如果和layout_width一起使用,當文本不能全部顯示時,後面用「…」來表示。
android:singleLine="true" android:layout_width="20dp"將只顯示「t…」。如果不設置singleLine或者設置為false,文本將自動換行
android:text設置顯示文本.
android:textAppearance設置文字外觀。如 「?android:attr/textAppearanceLargeInverse」這里引用的是系統自帶的一個外觀,?表示系統是否有這種外觀,否則使用默認的外觀。可設置的值如下:textAppearanceButton/textAppearanceInverse/textAppearanceLarge/textAppearanceLargeInverse/textAppearanceMedium/textAppearanceMediumInverse/textAppearanceSmall/textAppearanceSmallInverse
android:textColor設置文本顏色
android:textColorHighlight被選中文字的底色,默認為藍色
android:textColorHint設置提示信息文字的顏色,默認為灰色。與hint一起使用。
android:textColorLink文字鏈接的顏色.
android:textScaleX設置文字之間間隔,默認為1.0f。
android:textSize設置文字大小,推薦度量單位」sp」,如」15sp」
android:textStyle設置字形[bold(粗體) 0, italic(斜體) 1, bolditalic(又粗又斜) 2] 可以設置一個或多個,用「|」隔開
android:typeface設置文本字體,必須是以下常量值之一:normal 0, sans 1, serif 2,
monospace(等寬字體) 3]
android:height設置文本區域的高度,支持度量單位:px(像素)/dp/sp/in/mm(毫米)
android:maxHeight設置文本區域的最大高度
android:minHeight設置文本區域的最小高度
android:width設置文本區域的寬度,支持度量單位:px(像素)/dp/sp/in/mm(毫米),與layout_width 的區別看這里
android:maxWidth設置文本區域的最大寬度
android:minWidth設置文本區域的最小寬度

I. android 各個控制項及圖標名稱知多少

最外面可以是一個linerLayout 水平布局 你要幾行就有幾個水平布局的linerLayout 每行linerLayout四個LinerLayout 並且是垂直布局,每個linerLayout中包含一個imageButton(imageView) 和TextView,你可以把一個linerLayout作為一個控制項,也可以吧imageButton作為一個控制項,但一般這樣做都是用第一種,這個效果都是嵌套完成的

J. AndroidUI控制項switch使用方法

首先添加控制項:

<Switch

    android:id="@+id/sw_sfktmmzf"

    android:layout_width="match_parent"

    android:layout_height="wrap_content"

    android:layout_marginRight="15dp"

    android:showText="false"

    android:switchMinWidth="50dp"

    android:thumb="@drawable/thumb"

    android:track="@drawable/track" />

以下是該控制項的常用屬性:

textOn:控制項打開時顯示的文字

textOff:控制項關閉時顯示的文字

thumb:控制項開關的圖片(設置小圓圈顏色)

track:控制項開關的軌跡圖片(設置小圓圈背景顏色)

typeface:設置字體類型

switchMinWidth:開關最小寬度

switchPadding:設置開關 與文字的空白距離

switchTextAppearance:設置文本的風格

checked:設置初始選中狀態

splitTrack:是否設置一個間隙,讓滑塊與底部圖片分隔(API 21及以上)

showText:設置是否顯示開關上的文字(API 21及以上)

創建北京控制文件在drawable文件下

1、thumb.xml

<?xml version="1.0" encoding="utf-8"?><!-- 按鈕的選擇器,可以設置按鈕在不同狀態下的時候,按鈕不同的顏色 -->

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:drawable="@drawable/green_thumb" android:state_checked="true" />

    <item android:drawable="@drawable/gray_thumb" />

顏色文件:

green_thumb.xml

<?xml version="1.0" encoding="utf-8"?>

<shape xmlns:android="http://schemas.android.com/apk/res/android"

    android:shape="rectangle" >

    <!-- 高度40 -->

    <size android:height="@dimen/switch_height" android:width="@dimen/switch_height"/>

    <!-- 圓角弧度 20 -->

<corners android:radius="20dp"/>

<!-- 變化率 -->

    <gradient

        android:endColor="#eeeeee"

        android:startColor="#eeeeee" />

<stroke android:width="1dp"

        android:color="@color/home_text1"/>

</shape>

gray_thumb.xml

<?xml version="1.0" encoding="utf-8"?>

<shape xmlns:android="http://schemas.android.com/apk/res/android"

    android:shape="rectangle" >

    <!-- 高度40 -->

    <size android:height="@dimen/switch_height" android:width="@dimen/switch_height"/>

    <!-- 圓角弧度 20 -->

<corners android:radius="20dp"/>

<!-- 變化率 -->

    <gradient

        android:endColor="#eeeeee"

        android:startColor="#eeeeee" />

    <stroke android:width="1dp"

        android:color="@color/text_color03"/>

</shape>

2、track.xml

<?xml version="1.0" encoding="utf-8"?><!-- 底層下滑條的樣式選擇器,可控制Switch在不同狀態下,底下下滑條的顏色 -->

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:drawable="@drawable/green_track" android:state_checked="true" />

    <item android:drawable="@drawable/gray_track" />

</selector>

顏色文件:

green_track.xml

<?xml version="1.0" encoding="utf-8"?>

<shape xmlns:android="http://schemas.android.com/apk/res/android"

    android:shape="rectangle">

    <!-- 高度40 -->

    <size android:height="@dimen/switch_height"/>

    <!-- 圓角弧度 20 -->

    <corners android:radius="15dp"/>

    <!-- 變化率 -->

    <gradient

        android:endColor="@color/home_text1"

        android:startColor="@color/home_text1" />

</shape>

gray_track.xml

<?xml version="1.0" encoding="utf-8"?>

<shape xmlns:android="http://schemas.android.com/apk/res/android"

    android:shape="rectangle">

    <!-- 高度30  此處設置寬度無效-->

    <size android:height="@dimen/switch_height" />

    <!-- 圓角弧度 15 -->

    <corners android:radius="15dp" />

    <!-- 變化率  定義從左到右的顏色不變 -->

    <gradient

        android:endColor="@color/text_color03"

        android:startColor="@color/text_color03" />

</shape>

switch 控制項監聽事件:

 aSwitch.setOnCheckedChangeListener(newCompoundButton.OnCheckedChangeListener() {

      @Override

    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {

        //控制開關字體顏色

        if(isChecked) {

         //打開

        }else{

         //關閉

        }

      }

    });

熱點內容
張藝謀我們一家訪問人 發布:2024-05-05 12:38:05 瀏覽:111
美版安卓系統怎麼安裝 發布:2024-05-05 12:37:18 瀏覽:920
qq郵箱緩存地址 發布:2024-05-05 12:37:16 瀏覽:986
電位演算法 發布:2024-05-05 12:36:01 瀏覽:727
我的世界清風斗羅大陸伺服器地址 發布:2024-05-05 12:35:50 瀏覽:453
dell伺服器如何進入bios 發布:2024-05-05 12:34:26 瀏覽:330
在線名片製作源碼 發布:2024-05-05 12:29:27 瀏覽:447
陰陽師按鍵腳本 發布:2024-05-05 12:00:33 瀏覽:760
魔獸查腳本 發布:2024-05-05 11:54:37 瀏覽:39
sqlserver執行時間 發布:2024-05-05 11:50:31 瀏覽:649