android自定義button
Ⅰ 如何自定義android Button樣式
親,可以用到Drawable中的shape哦,給你一個demo
java"><?xmlversion="1.0"encoding="utf-8"?>
<selectorxmlns:android="
<itemandroid:state_focused="false">
<shape>
<solidandroid:color="@color/find_passwordbar_bg"/>
<strokeandroid:width="0.5dp"android:color="#C8C8C8"/>
</shape>
</item>
<itemandroid:state_focused="true">
<shape>
<solidandroid:color="@color/find_passwordbar_bg"/>
<strokeandroid:width="0.5dp"android:color="@color/main_color"/>
</shape>
</item>
</selector>
各個屬性的介紹
solid:實心,就是填充的意思
android:color指定填充的顏色
gradient:漸變
android:startColor和android:endColor分別為起始和結束顏色,ndroid:angle是漸變角度,必須為45的整數倍。
另外漸變默認的模式為android:type="linear",即線性漸變,可以指定漸變為徑向漸變,android:type="radial",徑向漸變需要指定半徑android:gradientRadius="50"。
stroke:描邊
android:width="2dp"描邊的寬度,android:color描邊的顏色。
我們還可以把描邊弄成虛線的形式,設置方式為:
android:dashWidth="5dp"
android:dashGap="3dp"
其中android:dashWidth表示'-'這樣一個橫線的寬度,android:dashGap表示之間隔開的距離。
corners:圓角
android:radius為角的弧度,值越大角越圓。
我們還可以把四個角設定成不同的角度,方法為:
<corners
android:topRightRadius="20dp"右上角
android:bottomLeftRadius="20dp"右下角
android:topLeftRadius="1dp"左上角
android:bottomRightRadius="0dp"左下角
/>
我自己寫的一個按鈕,效果就像圖中所示,用的Shape
新建後存放位置在res/drawable下
希望能幫到你,還望採納
Ⅱ android 怎麼動態設置button 的style
自定義樣式方法,可以直接通過定義xml文件來實現不同的樣式:
只需要修改button_style文件,同樣三種狀態分開定義:
Xml代碼
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
<shape>
<gradient android:startColor="#0d76e1" android:endColor="#0d76e1"
android:angle="270" />
<stroke android:width="1dip" android:color="#f403c9" />
<corners android:radius="2dp" />
<padding android:left="10dp" android:top="10dp"
android:right="10dp" android:bottom="10dp" />
</shape>
</item>
<item android:state_focused="true">
<shape>
<gradient android:startColor="#ffc2b7" android:endColor="#ffc2b7"
android:angle="270" />
<stroke android:width="1dip" android:color="#f403c9" />
<corners android:radius="2dp" />
<padding android:left="10dp" android:top="10dp"
android:right="10dp" android:bottom="10dp" />
</shape>
</item>
<item>
<shape>
<gradient android:startColor="#000000" android:endColor="#ffffff"
android:angle="180" />
<stroke android:width="1dip" android:color="#f403c9" />
<corners android:radius="5dip" />
<padding android:left="10dp" android:top="10dp"
android:right="10dp" android:bottom="10dp" />
</shape>
</item>
</selector>
gradient 主體漸變 startColor開始顏色,endColor結束顏色 ,angle開始漸變的角度(值只能為90的倍數,0時為左到右漸變,90時為下到上漸變,依次逆時針類推)
stroke 邊框 width 邊框寬度,color 邊框顏色
corners 圓角 radius 半徑,0為直角
padding text值的相對位置
Ⅲ 在android中,我自己定義的按鈕button,怎麼給他設置按下事件,onkeydown,
onkeydown是按下的時間,這個方法里可以寫當獲得滑鼠後的動作,點擊事件用onClincklistenner來監聽,可以彈出dialog、toast、或提交數據、跳轉等一系列動作。做開發要學會看api幫助文檔。
Ⅳ android中怎麼監聽自定義對話框中的button按鈕
和正常的button一樣,你在自定義的Mydialog中,肯定是嵌套了自己寫的布局,如下
LayoutInflater in = LayoutInflater.from(context);
View temp = in.inflate(R.layout.mydialog, null);
ok = (Button)temp.findViewById(R.id.button_moledialog_ok);
這樣就找到這個自定義布局中的ok按鈕了,然後就
ok.setOnClickListener(){。。。。}就行了
Ⅳ 如何自定義android Button樣式
方法/步驟
1
在layout中添加2個按鈕,從下圖中可以看出在按鈕中調用了style和android:background屬性,這兩個屬性一個是自定義樣式,一個是給按鈕添加背景圖片,下面詳細介紹下
2
展開res目錄,可以看到在values目錄下有styles.xml文件,該文件用於自定義樣式,雙擊打開
3
下圖中標注的是我自定義的樣式,name為BtnStyle,當按鈕調用自定義樣式的時候訪問這個name
4
下圖是在button中調用自定義樣式的方法,比較簡單
5
下面分享下如何往按鈕中添加自定義圖片,使按鈕看起來更漂亮些,因不同手機解析度不同,那必然牽扯到圖片的拉伸,在android系統下有個很好的技術「九宮格「,可以對圖片進行處理,只對局部進行拉伸,給工具目錄存儲在android\sdk\tools\draw9patch.bat,經過該工具處理的圖片以.9.png結尾,放到drawable文件夾中
6
下圖是在Button中通過android:background屬性載入圖片的方法,至此我們自定義的按鈕樣式也就完成了,當然這只是個引子,在具體的項目工程中實現的效果要比這個demo復雜很多,有好的設計思路歡迎交流。
Ⅵ 安卓UI自定義radiobutton樣式
自定義RadioButton樣式分為兩步:
1、自定義好樣式:
打開style.xml,添加一個item
<stylename="RadiobuttonStyle">
<itemname="android:gravity">center</item>
<itemname="android:textSize">16sp</item>
<itemname="android:textColor">@color/text_select_color</item>
<itemname="android:button">@null</item>
<itemname="android:drawableTop">@drawable/select_rbtn_home</item>
</style>
2、在RadioButon中引用:
<RadioButton
android:id="@+id/tv_tab_home"
style="@style/RadiobuttonStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:checked="true"
android:text="@string/tab_home"/>
Ⅶ android 中如何自定義dialog里button的背景顏色
選定Alterdialog所關聯的layout文件即可
就像一般的頁面是
setLayoutXXX什麼的
忘記了
Ⅷ android中button上的圖案可以自定義嗎
可以的。
package com.test;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.util.AttributeSet;
import android.widget.Button;
public class ImageTextButton2 extends Button {
private int resourceId = 0;
private Bitmap bitmap;
public ImageTextButton2(Context context) {
super(context,null);
}
public ImageTextButton2(Context context,AttributeSet attributeSet) {
super(context, attributeSet);
this.setClickable(true);
resourceId = R.drawable.icon;
bitmap = BitmapFactory.decodeResource(getResources(), resourceId);
}
public void setIcon(int resourceId)
{
this.bitmap = BitmapFactory.decodeResource(getResources(), resourceId);
invalidate();
}
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
// 圖片頂部居中顯示
int x = (this.getMeasuredWidth() - bitmap.getWidth())/2;
int y = 0;
canvas.drawBitmap(bitmap, x, y, null);
// 坐標需要轉換,因為默認情況下Button中的文字居中顯示
// 這里需要讓文字在底部顯示
canvas.translate(0,(this.getMeasuredHeight()/2) - (int) this.getTextSize());
super.onDraw(canvas);
}
}
Ⅸ 如何自定義android Button樣式
可以通過代碼實現圓角,背景色漸變,輪廓線的定義。對於不熟悉代碼的新手來說,此種方法略微復雜。
自己設計圖片,在xml布局文件中作為Button的背景圖片,若點擊之後需要不同的樣式,則可以製作兩張圖片,一張為背景圖片1,然後在按鈕監聽事件中,監聽到按鈕事件,則把背景換成背景圖片2。
Ⅹ 如何自定義android Button樣式
可以編寫一個DrawableXML文件,使用Shape,即可設置圓角、填充、邊緣線等屬性
詳細請網路Shape
最後Button的布局文件代碼中設置該xml為背景,給你一個例子
selector_btn.xml
<?xmlversion="1.0"encoding="utf-8"?>
<selectorxmlns:android="
<itemandroid:state_pressed="false">
<shape>
<cornersandroid:radius="50dp"/>
<solidandroid:color="#FFFFFF"/>
<strokeandroid:width="0.5dp"android:color="#000000"/>
</shape>
</item>
<itemandroid:state_pressed="true">
<shape>
<cornersandroid:radius="50dp"/>
<solidandroid:color="#00c8fb"/>
<strokeandroid:width="0.5dp"android:color="#000000"/>
</shape>
</item>
</selector>
<itemname="android:background">@drawable/selector_btn</item>
希望能幫到你,還望~~