版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
【移動應(yīng)用開發(fā)技術(shù)】Android中怎么利用EditText實(shí)現(xiàn)一個扁平化的登錄界面
這篇文章給大家介紹Android中怎么利用EditText實(shí)現(xiàn)一個扁平化的登錄界面,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。<RelativeLayout
xmlns:android="/apk/res/android"
xmlns:app="/apk/res-auto"
xmlns:tools="/tools"
android:id="@+id/activity_login"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/logoScreenBackground">
<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/iv_icon"
android:layout_width="90dp"
android:layout_height="90dp"
android:layout_centerHorizontal="true"
android:layout_marginTop="60dp"
android:scaleType="centerCrop"
android:src="@mipmap/ic_logo"
/>
<TextView
android:id="@+id/tv_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="160dp"
android:text="AlphaGo"
android:textColor="#000"
android:textSize="23sp"
android:typeface="monospace"
/>
<RelativeLayout
android:id="@+id/rl_userName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/tv_title"
android:layout_marginTop="40dp"
android:background="@drawable/rectangle_edittext">
<ImageView
android:id="@+id/iv_userIconName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:paddingBottom="15dp"
android:paddingLeft="30dp"
android:paddingTop="15dp"
android:src="@mipmap/ic_edittextuname"
/>
<View
android:id="@+id/viewName"
android:layout_width="1dip"
android:layout_height="20dp"
android:layout_centerVertical="true"
android:layout_marginLeft="10dp"
android:layout_toRightOf="@id/iv_userIconName"
android:background="@color/colorCursor"
/>
<EditText
android:id="@+id/et_userName"
android:layout_width="match_parent"
android:layout_height="30dp"
android:layout_centerVertical="true"
android:layout_marginLeft="10dp"
android:layout_toRightOf="@id/viewName"
android:background="@null"
android:ems="19"
android:hint="
用戶名"
android:textColorHint="@color/colorCursor"
android:textCursorDrawable="@drawable/color_cursor"
android:textSize="15sp"
/>
<ImageView
android:id="@+id/iv_unameClear"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="20dp"
android:src="@mipmap/ic_backspace_grey600_24dp"
android:visibility="invisible"
/>
</RelativeLayout>
<RelativeLayout
android:id="@+id/rl_userPassword"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/rl_userName"
android:layout_marginTop="1dp"
android:background="@drawable/rectangle_edittext">
<ImageView
android:id="@+id/iv_userIconPwd"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:paddingBottom="15dp"
android:paddingLeft="30dp"
android:paddingTop="15dp"
android:src="@mipmap/ic_edittextupwd"
/>
<View
android:id="@+id/viewPwd"
android:layout_width="1dip"
android:layout_height="20dp"
android:layout_centerVertical="true"
android:layout_marginLeft="10dp"
android:layout_toRightOf="@id/iv_userIconPwd"
android:background="@color/colorCursor"
/>
<EditText
android:id="@+id/et_password"
android:layout_width="match_parent"
android:layout_height="30dp"
android:layout_centerVertical="true"
android:layout_marginLeft="10dp"
android:layout_toRightOf="@id/viewPwd"
android:background="@null"
android:drawablePadding="5dp"
android:ems="19"
android:hint="
密碼"
android:inputType="textPassword"
android:textColorHint="@color/colorCursor"
android:textCursorDrawable="@drawable/color_cursor"
android:textSize="15sp"
/>
<ImageView
android:id="@+id/iv_pwdClear"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="20dp"
android:src="@mipmap/ic_backspace_grey600_24dp"
android:visibility="invisible"
/>
</RelativeLayout>
<CheckBox
android:id="@+id/cb_checkbox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/rl_userPassword"
android:layout_centerHorizontal="true"
android:layout_marginTop="20dp"
android:background="@null"
android:checked="false"
android:duplicateParentState="false"
android:text="記住密碼"
android:textColor="#666666"
android:textSize="15sp"
app:buttonTint="@color/colorLoginButton"
/>
<Button
android:id="@+id/btn_login"
android:layout_width="340dp"
android:layout_height="wrap_content"
android:layout_below="@id/cb_checkbox"
android:layout_centerHorizontal="true"
android:layout_marginTop="20dp"
android:background="@drawable/round_corner_bg"
android:gravity="center"
android:padding="10dp"
android:text="登錄"
android:textColor="#fff"
android:textSize="18sp"
/>
</RelativeLayout>幾個重點(diǎn)的問題從圖中可以看出整個布局是從上到下的分布,那我們就按這樣的順訊來分析1.如何一張圖片圓形化的展示出來2.整體輸入框的布局(輸入框中豎線的實(shí)現(xiàn))3.監(jiān)聽edittext是否有輸入4.將checkbox的顏色與界面統(tǒng)一1.如何將一張圖片圓形化的展示出來我是用的是一個開源的項(xiàng)目CircleImageView,它可以用來輕松的實(shí)現(xiàn)圖片的圓形化首先在build.gradle中添加依賴compile'de.hdodenhof:circleimageview:2.1.0'在xml布局中用<de.hdodenhof.circleimageview.CircleImageView>來代替ImageView
<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/iv_icon"
android:layout_width="90dp"
android:layout_height="90dp"
android:layout_centerHorizontal="true"
android:layout_marginTop="60dp"
android:scaleType="centerCrop"
android:src="@mipmap/ic_logo"
/>2.整體輸入框的布局(輸入框中豎線的實(shí)現(xiàn))整個輸入框就是常規(guī)的ImageView加上textView實(shí)現(xiàn)的,分隔圖片和提示文字的豎線,需要我們用view自己去寫。<View
android:id="@+id/viewPwd"
android:layout_width="1dip"
android:layout_height="20dp"
android:layout_centerVertical="true"
android:layout_marginLeft="10dp"
android:layout_toRightOf="@id/iv_userIconPwd"
android:background="@color/colorCursor"
/>這樣一條豎線就寫好了,距離大小根據(jù)你的輸入框去調(diào)就好。在寫editText的時候要想十分的簡潔,需要將背景設(shè)置為"@null",自己去寫一個"shape"<shape
xmlns:android="/apk/res/android">
<size
android:width="1dp"/>
<solid
android:color="@color/colorCursor"/>
</shape>"colorCursor"是自己界面的風(fēng)格3.監(jiān)聽EditText是否有輸入我先將代碼貼出來public
class
EditTextClearTools
{
public
static
void
addClearListener(final
EditText
et
,
final
ImageView
iv){
et.addTextChangedListener(new
TextWatcher()
{
@Override
public
void
beforeTextChanged(CharSequence
s,
int
start,
int
count,
int
after)
{
}
@Override
public
void
onTextChanged(CharSequence
s,
int
start,
int
before,
int
count)
{
}
@Override
public
void
afterTextChanged(Editable
s)
{
//如果有輸入內(nèi)容長度大于0那么顯示clear按鈕
String
str
=
s
+
""
;
if
(s.length()
>
0){
iv.setVisibility(View.VISIBLE);
}else{
iv.setVisibility(View.INVISIBLE);
}
}
});
iv.setOnClickListener(new
View.OnClickListener()
{
@Override
public
void
onClick(View
v)
{
et.setText("");
}
});
}
}首先大家可以從布局中看出刪除按鈕默認(rèn)是隱藏的androi
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024美金結(jié)算支付合同范本6篇
- 2025年度拆除工程合同糾紛調(diào)解協(xié)議范本4篇
- 二零二五年度生物科技產(chǎn)業(yè)園廠址租賃及研發(fā)合作框架協(xié)議2篇
- 與消防隊(duì)合作協(xié)議 2篇
- 2024跨境商業(yè)交易商議與協(xié)議制作詳解版
- 2025年度老舊廠房拆遷安置房購置合同4篇
- 2025年度礦產(chǎn)資源測繪勞務(wù)分包合同(新版)4篇
- 2024年獨(dú)家品牌代理協(xié)議
- 2025年度產(chǎn)業(yè)園租賃與運(yùn)營一體化合同4篇
- 2024年03月浙江杭銀理財(cái)崗位招考筆試歷年參考題庫附帶答案詳解
- 巖土工程勘察課件0巖土工程勘察
- 《腎上腺腫瘤》課件
- 2024-2030年中國典當(dāng)行業(yè)發(fā)展前景預(yù)測及融資策略分析報(bào)告
- 《乘用車越野性能主觀評價(jià)方法》
- 幼師個人成長發(fā)展規(guī)劃
- 2024-2025學(xué)年北師大版高二上學(xué)期期末英語試題及解答參考
- 動物醫(yī)學(xué)類專業(yè)生涯發(fā)展展示
- 批發(fā)面包采購合同范本
- 乘風(fēng)化麟 蛇我其誰 2025XX集團(tuán)年終總結(jié)暨頒獎盛典
- 2024年大數(shù)據(jù)分析公司與中國政府合作協(xié)議
- 一年級數(shù)學(xué)(上)計(jì)算題專項(xiàng)練習(xí)匯編
評論
0/150
提交評論