Android 開發 View的API 轉載

轉載地址:https://blog.csdn.net/lemonrabbit1987/article/details/47704679android

 

View類表明用戶界面組件的基本構建塊。一個View佔據屏幕上的一塊方形區域,負責該區域的繪圖或事件處理。View類是用來建立交互式UI界面的全部部件的基類。工具

一個窗口的全部View以樹形的方式組織。能夠經過代碼建立和組裝View的方式或者經過編寫一個或多個XML佈局文件的方式搭建View樹。View的具體子類能夠做爲控件或者顯示文本、圖像或者其餘內容。佈局

一旦建立好了View樹,能夠根據須要執行一下幾類共同的操做:ui

  • 設置屬性。例如爲一個TextView設置文本屬性。除了View定義的屬性和方法外,View不一樣子類具備一些特有的屬性和方法。注意:在構建View樹時已知的屬性能夠在XML佈局文件中設置。
  • 設置焦點。Android系統會根據用戶輸入移動焦點。利用requestFocus方法,強制將焦點置於某個特定的視圖。
  • 設置listener。容許爲View設置一些listener,這樣能夠在某些感興趣的事件發生時得到通知。例如全部的View均可以使用setOnFocusChangeListener(android.view.View.OnFocusChangeListener)設置一個用以跟蹤該View得到焦點或失去焦點的listener。其餘View子類提供了特有的listener。例如一個Button能夠設置一個監測是否被點擊的listener.
  • 設置可視化。能夠經過setVisibility(int)方法設置顯示或隱藏View.

View的XML屬性

屬性名稱 相關方法 描述
android:accessibilityLiveRegion setAccessibilityLiveRegion(int) 指示無障礙服務當View改變時是否通知用戶
android:alpha setAlpha(float) Viewalpha透明度屬性,從0(徹底透明)到1(不透明)
android:background setBackgroundResource(int) 一個做爲背景的drawable元素
android:clickable setClickable(boolean) 定義這個View是否響應單擊事件
android:clickable setClickable(boolean) 定義這個View是否響應單擊事件
android:contentDescription setContentDescription(CharSequence) 定義簡單描述View內容的文本,一般用於提供無障礙支持
android:drawingCacheQuality setDrawingCacheQuality(int) 定義透明繪畫緩衝的質量
android:duplicateParentState   這個屬性設置爲true,則該View由它的直接父類得到繪製狀態(焦點、按下)而不是它自身
android:fadeScrollbars setScrollbarFadingEnabled(boolean) 定義當滾動條無用時是否漸隱
android:fadingEdgeLength getVerticalFadingEdgeLength() 設置View上下黑色陰影邊的長度
android:filterTouchesWhenObscured setFilterTouchesWhenObscured(boolean) 指定當該View的窗口被其餘可見的窗口遮擋時是否過濾觸摸事件
android:fitsSystemWindows setFitsSystemWindows(boolean) 是否根據系統窗口例如狀態欄調整View佈局
android:focusable setFocusable(boolean) 設置該View是否能夠得到焦點
android:focusableInTouchMode setFocusableInTouchMode(boolean) 設置在觸摸模式下該View是否能夠得到焦點
android:hapticFeedbackEnabled setHapticFeedbackEnabled(boolean) 設置View是否有觸覺的反饋(長按等事件支持)
android:id setId(int) 爲該View指定一個標識名稱,支持經過view.findViewById()Activity.findViewById()方法獲取該View
android:importantForAccessibility setImportantForAccessibility(int) 指定該View對無障礙支持的重要度
android:isScrollContainer setScrollContainer(boolean) 指定該View是否做爲一個可滾動的容器,支持能夠經過改變大小收縮整個窗口覺得輸入法騰出空間
android:keepScreenOn setKeepScreenOn(boolean) 指定是否該View的窗口在可見的時候總使屏幕常亮
android:layerType setLayerType(int,Paint) 指定在該View背後的層次類型(軟件或硬件層)
android:layoutDirection setLayoutDirection(int) 指定佈局繪製的方向(左到右,右到左等)
android:longClickable setLongClickable(boolean) 指定該View是否響應長按事件
android:minHeight setMinimumHeight(int) 設定該View的最小高度
android:minWidth setMinimumWidth(int) 設定該View的最小寬度
android:nextFocusDown setNextFocusDownId(int) 當下一個焦點爲FOCUS_DOWN時,定義得到焦點的下一個View。若是指定的View不存在或不可見,則報RuntimeException異常
android:nextFocusForward setNextFocusForwardId(int) 當下一個焦點爲FOCUS_FORWARD時,定義得到焦點的下一個View。若是指定的View不存在或不可見,則報RuntimeException異常
android:nextFocusLeft setNextFocusLeftId(int) 當下一個焦點爲FOCUS_LEFT時,定義得到焦點的下一個View
android:nextFocusRight setNextFocusRightId(int) 當下一個焦點爲FOCUS_RIGHT時,定義得到焦點的下一個View。若是指定的View不存在或不可見,則報RuntimeException異常
android:nextFocusUp setNextFocusUpId(int) 當下一個焦點爲FOCUS_UP時,定義得到焦點的下一個View。若是指定的View不存在或不可見,則報RuntimeException異常
android:onClick   當該View被單擊時觸發的方法名稱
android:padding setPaddingRelative(int,int,int,int) 以像素值設置四條邊的填充(View的邊界和內容之間的空間)
android:paddingBottom setPaddingRelative(int,int,int,int) 以像素值設置底邊的填充
android:paddingEnd setPaddingRelative(int,int,int,int) 以像素值設置右邊的填充
android:paddingLeft setPadding(int,int,int,int) 以像素值設置左邊的填充
android:paddingRight setPadding(int,int,int,int) 以像素值設置右邊的填充
android:paddingStart setPaddingRelative(int,int,int,int) 以像素值設置左邊的填充
android:paddingTop setPaddingRelative(int,int,int,int) 以像素值設置頂邊的填充
android:requiresFadingEdge setVerticalFadingEdgeEnabled(boolean) 定義在滾動時哪一個邊應該被有陰影
android:rotation setRotation(float) View的旋轉,以度爲單位
android:rotationX setRotationX(float) View沿x軸的旋轉,以度爲單位
android:rotationY setRotationY(float) View沿y軸的旋轉,以度爲單位
android:saveEnabled setSaveEnabled(boolean) 若爲false,則凍結後該View的全部狀態都不會保存
android:scaleX setScaleX(float) View沿x軸的縮放
android:scaleY setScaleY(float) View沿y軸的縮放
android:scrollX   初始水平滾動偏移量,單位像素
android:scrollY   初始豎直滾動偏移量,單位像素
android:scrollbarAlwaysDrawHorizontalTrack   指定水平滾動條是否一直顯示
android:scrollbarAlwaysDrawVerticalTrack   指定豎直滾動條是否一直顯示
android:scrollbarDefaultDelayBeforeFade setScrollBarDefaultDelayBeforeFade(int) 設置滾動條等待隱藏的時間,單位毫秒
android:scrollbarFadeDuration setScrollBarFadeDuration(int) 設置滾動條隱藏的時間,單位毫秒
android:scrollbarSize setScrollBarSize(int) 設置豎直滾動條的寬度和水平滾動條的高度
android:scrollbarStyle setScrollBarStyle(int) 設置滾動條的樣式和位置
android:scrollbarThumbHorizontal   設置水平滾動條的Thumbdrawable元素
android:scrollbarThumbVertical   設置豎直滾動條的Thumb的drawable`元素
android:scrollbarTrackHorizontal   設置水平滾動條的軌道的drawable元素
android:scrollbarTrackVertical   設置豎直滾動條的軌道的drawable元素
android:scrollbars   指定哪些滾動條應該顯示
android:soundEffectsEnabled setSoundEffectsEnabled(boolean) 指定View是否開啓點擊或觸摸等特殊事件的聲音效果
android:tag   爲該View提供一個標記,經過View.getTag()View.findViewwithTag()方法得到該View
android:textAlignment setTextAlignment(int) 定義文本的對齊
android:textDirection setTextDirection(int) 定義文本的方向
android:transformPivotX setPivotX(float) 旋轉或縮放依賴的座標軸點的x座標
android:transformPivotY setPivotX(float) 旋轉或縮放依賴的座標軸點的y座標
android:translationX setTranslationX(float) View在x方向上的移動
android:translationY setTranslationY(float) View在y方向上的移動
android:visibility setVisibility(int) 設置該View初始的可見性

View類能夠設置的listener

listener類 設置方法 描述
View.OnApplyWindowInsetsListener setOnApplyWindowInsetsListener 接管該ViewWindows Insets應用策略
View.OnClickListener setOnClickListener 當該View被點擊時觸發的回調
View.OnCreateContextMenuListener setOnCreateContextMenuListener 當該View的上下文菜單正被構建時觸發的回調
View.OnDragListener setOnDragListener 當該View接收到Drag事件時觸發的回調
View.OnFocusChangeListener setOnFocusChangeListener 當該View焦點變化時觸發的回調
View.OnGenericMotionListener setOnGenericMotionListener 當該View接收到通常的移動事件時觸發的回調
View.OnKeyListener setOnKeyListener 當該View下硬件鍵盤被按下時觸發的回調
View.OnLongClickListener setOnLongClickListener 當該View被按下並長期保持時觸發的回調
View.OnSystemUiVisibilityChangeListener setOnSystemUiVisibilityChangeListener 當系統工具條的可見性改變時觸發的回調
View.OnTouchListener setOnTouchListener 當該View接收到touch事件時觸發的回調
相關文章
相關標籤/搜索