直播平臺軟體開發,實現自定義標題欄
直播平臺軟體開發,實現自定義標題欄
新建一個class繼承一個相對佈局並重寫其構造方法
public class CustomTitleBlock extends RelativeLayout { public CustomTitleBlock(Context context) { super(context); } public CustomTitleBlock(Context context, AttributeSet attrs) { super(context, attrs); } public CustomTitleBlock(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); } public CustomTitleBlock(Context context, AttributeSet attrs, int defStyleAttr,int defStyleRes) { super(context, attrs, defStyleAttr, defStyleRes); } }
建立一個Layout檔案用於CustomTitleBlock.class繫結並初始化相關控制元件
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android=" xmlns:tools=" xmlns:app=" android:id="@+id/layout_title" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/white"> <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginLeft="12dp" android:layout_marginRight="12dp"> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/left" android:layout_width="wrap_content" android:layout_height="match_parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent"> <ImageView android:id="@+id/iv_left" android:layout_width="wrap_content" android:layout_height="wrap_content" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent" /> <TextView android:id="@+id/tv_left" android:layout_width="wrap_content" android:layout_height="wrap_content" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toRightOf="@+id/iv_left" app:layout_constraintTop_toTopOf="parent" /> </androidx.constraintlayout.widget.ConstraintLayout> <TextView android:id="@+id/tv_centent" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textStyle="bold" android:textSize="16sp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintLeft_toLeftOf="parent"/> <EditText android:id="@+id/search_box" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_marginTop="4dp" android:layout_marginBottom="4dp" android:textSize="14sp" android:background="@drawable/search_box_style" android:drawableLeft="@drawable/search_64" android:drawablePadding="6dp" android:paddingLeft="8dp" android:paddingRight="8dp" android:visibility="invisible" app:layout_constraintLeft_toRightOf="@+id/left" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintRight_toLeftOf="@+id/right"/> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/right" android:layout_width="wrap_content" android:layout_height="match_parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintRight_toRightOf="parent"> <TextView android:id="@+id/tv_right" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintRight_toLeftOf="@+id/iv_right"/> <ImageView android:id="@+id/iv_right" android:layout_width="wrap_content" android:layout_height="wrap_content" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent"/> </androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout> </RelativeLayout>
在values資料夾下建立一個attrs.xml檔案用於宣告控制元件的屬性
<?xml version="1.0" encoding="utf-8"?> <resources> <declare-styleable name="CustomTitleBlock"> <!-- 標題欄左邊 --> <attr name="leftText" format="string"/> <attr name="leftTextColor" format="color"/> <attr name="leftTextSize" format="integer"/> <attr name="leftImage" format="reference"/> <!-- 標題欄中間 --> <attr name="centerText" format="string"/> <attr name="centerTextColor" format="color"/> <attr name="centerTextSize" format="integer"/> <!-- 搜尋框 --> <attr name="searchBox" format="boolean"/> <attr name="searchBoxHint" format="string"/> <attr name="searchBoxWidth" format="dimension"> <enum name="match_parent" value="-1"/> <enum name="wrap_content" value="-2"/> </attr> <!-- 標題欄右邊 --> <attr name="rightText" format="string"/> <attr name="rightTextColor" format="color"/> <attr name="rightTextSize" format="integer"/> <attr name="rightImage" format="reference"/> </declare-styleable> </resources>
以上就是 直播平臺軟體開發,實現自定義標題欄,更多內容歡迎關注之後的文章
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978258/viewspace-2936635/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- UWP中實現自定義標題欄
- 直播平臺軟體開發,uni-app實現選項卡功能APP
- 直播平臺軟體開發,前端實現登入拼圖驗證前端
- Android 自定義標題欄Android
- 直播平臺搭建,實現自定義設定登入頁面
- 直播軟體開發,自定義搜尋欄的圖示樣式和搜尋框
- 直播電商平臺開發,vue 自定義指令過濾特殊字元Vue字元
- 直播軟體開發,工具類的自定義彈窗效果
- 直播電商平臺開發,動態去除系統自帶標題欄、狀態列
- 直播平臺搭建,自定義View實現loading動畫載入View動畫
- 直播平臺原始碼,Android自定義View實現呼吸燈效果原始碼AndroidView
- Qt隱藏系統標題欄,使用自定義標題欄QT
- 直播平臺軟體開發,flex佈局例項Flex
- 直播平臺軟體開發,一個簡單的Android登入實現demoAndroid
- 直播app開發,封裝式標題欄APP封裝
- 直播平臺開發,TabLayout的使用和自定義紅點訊息提示TabLayout
- 直播帶貨平臺開發流量體現是重中之重!
- 如何開發直播平臺,直播平臺開發需要CDN嗎
- 直播平臺搭建,自定義氣泡效果(BubbleView)View
- 直播平臺開發,使用swiper實現輪播效果
- 直播平臺軟體開發,flutter Wrap 自動換行元件Flutter元件
- 直播平臺開發,自定義中間向兩邊滑動的滑動條
- 直播平臺原始碼開發,簽到功能的實現原始碼
- 直播軟體開發,Android自定義簡單的音訊波譜viewAndroid音訊View
- 直播平臺軟體開發,Android 10 拍照和相簿選擇Android
- 直播平臺軟體開發,Extjs Grid自動換行JS
- 直播平臺軟體開發,簡單易修改的彈框元件元件
- 直播平臺軟體開發,Android 計時器,定時功能Android
- 直播平臺軟體開發,cocos lua --定時器的使用定時器
- Android自定義TitleBar 自定義標題欄 並進行事件處理Android事件
- HarmonyOS NEXT 5.0自定義增強版導航欄元件|鴻蒙ArkUI自定義標題欄元件鴻蒙UI
- 直播平臺開發乾貨分享——標準直播及快、慢直播的特性
- 直播平臺原始碼,頂部標籤欄及內容列表的設計與實現原始碼
- 直播平臺原始碼,Flutter 自定義 虛線 分割線原始碼Flutter
- 微信公眾平臺開發(八) 自定義選單功能開發
- 自定義標籤出現問題
- 直播平臺軟體開發,登陸時獲取當前時間
- 直播平臺軟體開發,Uniapp動態設定元件顏色APP元件