日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Android Studio 創(chuàng)建自定義控件的方法

瀏覽:31日期:2022-09-23 16:08:49

我們知道,當(dāng)系統(tǒng)控件并不能滿足我們的需求時(shí),我們就需要來(lái)創(chuàng)建自定義控件,主要有兩種方法

(1)引入布局

下面來(lái)自定義一個(gè)控件,iPhone的標(biāo)題欄,創(chuàng)建一個(gè)標(biāo)題欄并不是什么難事,加入兩個(gè)button一個(gè)TextView就行了,可是在我們的應(yīng)用中,有很多頁(yè)面都是需要這樣的標(biāo)題欄,我們不可能每個(gè)活動(dòng)都寫(xiě)一遍布局,這個(gè)時(shí)候我們就可以用引用布局的方法,新建一個(gè)title.xml

<?xml version='1.0' encoding='utf-8'?><LinearLayout xmlns:android='http://schemas.android.com/apk/res/android' android:layout_width='match_parent' android:layout_height='wrap_content' android:background='#817D7D' > <Button android: android:layout_width='wrap_content' android:layout_height='wrap_content' android:layout_gravity='center' android:layout_margin='5dp' android:text='back' android:textColor='#fff'/> <TextView android: android:layout_width='0dp' android:layout_height='wrap_content' android:layout_gravity='center' android:layout_weight='1' android:gravity='center' android:textColor='#c0c0c0' android:textSize='24sp' android:text='title text' /> <Button android: android:layout_width='wrap_content' android:layout_height='wrap_content' android:layout_gravity='center' android:layout_margin='5dp' android:textColor='#fff' android:text='edit' /></LinearLayout>

現(xiàn)在標(biāo)題欄已經(jīng)寫(xiě)好了,接下來(lái)就要在程序中使用,修改activity_main.xml

<?xml version='1.0' encoding='utf-8'?><LinearLayout xmlns:android='http://schemas.android.com/apk/res/android' android:layout_width='match_parent' android:layout_height='match_parent' > <include layout='@layout/title'/></LinearLayout>

我們只要通過(guò)一句include語(yǔ)句引進(jìn)來(lái)就行了

<include layout='@layout/title'/>

最后我們需要在MainActivity中將系統(tǒng)自帶的標(biāo)題欄屏蔽

package com.example.ch03;import android.drm.DrmStore;import android.support.v7.app.ActionBar;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //屏蔽系統(tǒng)自帶狀態(tài)欄 ActionBar actionBar = getSupportActionBar(); if(actionBar != null){ actionBar.hide(); } }}

最后來(lái)看一下效果

Android Studio 創(chuàng)建自定義控件的方法

(2)注冊(cè)點(diǎn)擊事件

在上面我們看到,每個(gè)界面的返回按鈕功能都是一樣的,即銷毀當(dāng)前活動(dòng),我們不可能在每個(gè)活動(dòng)中都重新注冊(cè),所以使用自定義控件的方式來(lái)解決新建TitleLayout,成為標(biāo)題欄控件

public class TitleLayout extends LinearLayout {public TitleLayout(Context context, AttributeSet attrs){ super(context,attrs); LayoutInflater.from(context).inflate(R.layout.title,this);

我們重寫(xiě)了LinearLayout中帶參數(shù)的構(gòu)造函數(shù),引入TitleLayout控件就會(huì)調(diào)用這個(gè)構(gòu)造函數(shù),然后對(duì)標(biāo)題欄進(jìn)行動(dòng)態(tài)加載,就需要借助LayoutInflater實(shí)現(xiàn)。通過(guò)LayoutInflater的from方法構(gòu)建一個(gè)LayoutInflater對(duì)象,調(diào)用inflate()方法動(dòng)態(tài)加載一個(gè)布局文件

然后在布局文件中添加自定義控件,修改activity_main.xml

<?xml version='1.0' encoding='utf-8'?><LinearLayout xmlns:android='http://schemas.android.com/apk/res/android' android:layout_width='match_parent' android:layout_height='match_parent' ><com.example.ch03.TitleLayout android:layout_width='match_parent' android:layout_height='wrap_content'/></LinearLayout>

重新運(yùn)行一下,效果是一樣的

下面來(lái)給按鈕注冊(cè)點(diǎn)擊事件,修改TitleLayout中的代碼

package com.example.ch03;import android.app.Activity;import android.content.Context;import android.util.AttributeSet;import android.view.LayoutInflater;import android.view.View;import android.widget.Button;import android.widget.LinearLayout;import android.widget.Toast;public class TitleLayout extends LinearLayout {public TitleLayout(Context context, AttributeSet attrs){ super(context,attrs); LayoutInflater.from(context).inflate(R.layout.title,this); Button titleBack = findViewById(R.id.title_back); Button titleEdit = findViewById(R.id.title_edit); titleBack.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { ((Activity) getContext()).finish(); } }); titleEdit.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Toast.makeText(getContext(),'You click edit button', Toast.LENGTH_LONG).show(); } });}}

重新運(yùn)行一下,然后點(diǎn)擊edit按鈕

Android Studio 創(chuàng)建自定義控件的方法

到此這篇關(guān)于Android Studio 創(chuàng)建自定義控件的方法的文章就介紹到這了,更多相關(guān)Android Studio自定義控件內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Android
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
免费日韩视频| 欧美一级久久| 欧美精品导航| 久久爱www.| 精品一区二区三区中文字幕在线| 亚洲+小说+欧美+激情+另类| 91成人在线网站| 欧美日韩午夜| 国产一区国产二区国产三区| 天堂中文在线播放| 99热精品久久| 热久久国产精品| 久久精品99国产国产精| 精品国产亚洲一区二区三区大结局| 日本在线啊啊| 香蕉久久国产| 免费在线观看一区| 成人在线网站| 免费在线观看成人| 国产精品久久久久久久久久妞妞| 精品视频91| 精品久久中文| 日韩视频一区二区三区在线播放免费观看| 综合一区二区三区| 久久av导航| 久久一级电影| 日韩一区二区三区高清在线观看| 欧美成人精品午夜一区二区| 久久精品国产亚洲夜色av网站| 视频一区二区三区入口| 麻豆一区二区三| 欧美日韩三区| 久久超碰99| 亚洲色诱最新| 精品视频一区二区三区四区五区 | 99久久99视频只有精品| 羞羞答答国产精品www一本| 国产精品sm| 自拍日韩欧美| 国产精品v一区二区三区| 香蕉久久国产| 中文字幕在线免费观看视频| 美女久久网站| 成人片免费看| 欧美一级久久| 亚洲一区欧美二区| 国产精品99视频| 日本成人在线视频网站| 国产精品专区免费| 欧美一区=区三区| 亚洲不卡av不卡一区二区| 天堂成人国产精品一区| 精品国产乱码久久久久久1区2匹| 免费国产自线拍一欧美视频| 91亚洲自偷观看高清| 国产日韩欧美一区二区三区在线观看 | 久久精品国产福利| 麻豆精品91| 日本在线高清| 国产精品一区二区免费福利视频| 亚洲高清成人| 精品99久久| 国产亚洲精品美女久久久久久久久久| 美女网站一区| 另类专区亚洲| 国产精品videossex久久发布| 免费人成精品欧美精品| 激情视频一区二区三区| 精品女同一区二区三区在线观看| 欧美日本不卡| 亚洲精品美女| 久久不射网站| 免费国产自久久久久三四区久久| 精品一区电影| 国产美女久久| 日韩av一级片| 亚洲乱亚洲高清| 丝袜美腿一区二区三区| 国精品一区二区三区| 日韩电影二区| 中文一区一区三区高中清不卡免费| 美女视频黄久久| 国产激情欧美| 国产精品成人**免费视频| 国产三级一区| 国产精品jk白丝蜜臀av小说| 国产欧美日本| 国产香蕉精品| 国产麻豆一区二区三区| 国产探花一区| 国产麻豆精品| 国产精品第一国产精品| 国产精品第一| 久久精品女人| 精品国产a一区二区三区v免费| 毛片不卡一区二区| 精品一区二区三区中文字幕视频| 久久精品一区二区三区中文字幕| 美女精品久久| 国产成人精品一区二区三区免费| 日韩av在线播放网址| 亚洲播播91| 欧美在线亚洲| 蜜臀va亚洲va欧美va天堂| 日韩一区精品| 欧美日韩亚洲一区二区三区在线| 国产亚洲电影| 精品久久97| 一区二区小说| 一区二区三区午夜视频| 日韩av午夜在线观看| 麻豆成人在线观看| 欧美二三四区| 国产精品外国| 日韩激情av在线| 国产精品亚洲综合久久| 精品久久美女| 国户精品久久久久久久久久久不卡 | 免播放器亚洲一区| 日韩1区2区日韩1区2区| 久久精品三级| 久久香蕉国产| 日日夜夜免费精品| 麻豆精品在线视频| 午夜av成人| 亚洲欧洲日韩| 精品欧美日韩精品| 国产字幕视频一区二区| 亚洲欧洲美洲国产香蕉| 免费一级欧美片在线观看网站 | 国产精品99在线观看| 极品日韩av| 日韩专区视频网站| 欧美国产一级| 亚洲一区导航| 精品国产一区二区三区性色av| 久久精品国产99久久| 五月亚洲婷婷 | 美腿丝袜亚洲一区| 婷婷色综合网| 欧美视频一区| 伊人精品一区| 国产亚洲欧美日韩精品一区二区三区 | 午夜一级久久| 老司机免费视频一区二区三区| 91精品一区国产高清在线gif| 亚洲久久视频| 国产盗摄——sm在线视频| 亚洲香蕉久久| 黑森林国产精品av| 蜜桃视频免费观看一区| 精品五月天堂| 美国三级日本三级久久99 | 日韩国产一区| 男女性色大片免费观看一区二区| 国产福利亚洲| 美女日韩在线中文字幕| 久久精品国产网站| 免费观看在线色综合| 久久久久免费| 人人爱人人干婷婷丁香亚洲| 亚洲电影在线| 加勒比视频一区| 亚洲毛片在线免费| 欧美一区久久久| 久久激五月天综合精品| 欧美精品一线| 日韩国产在线| 国产极品一区| 日韩精品福利一区二区三区| 亚洲性视频h| 亚洲免费福利| 美女视频一区在线观看| 日韩不卡一区二区三区| 国产一区导航| 欧美特黄一级大片| 成人在线视频免费看| 88久久精品| 亚洲色图国产| 99精品在线观看| 久久久久伊人| 欧美日韩a区| 中文亚洲欧美| 1000部精品久久久久久久久| 成人在线超碰| 麻豆视频一区二区| 国产精品丝袜在线播放| 日韩激情网站| 日本在线成人| 蜜臀av亚洲一区中文字幕| 欧美在线资源| 亚洲香蕉网站| 亚洲v在线看| 久久久天天操| 日韩精品专区| 理论片午夜视频在线观看| 精品国产鲁一鲁****| 麻豆成人在线观看| 国产精品成人国产| 麻豆精品在线播放|