當前位置:首頁 » 安卓系統 » android按鈕效果

android按鈕效果

發布時間: 2022-07-15 05:31:51

『壹』 如何自定義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如何自定義按鈕效果

對textview做 touch時間的處理

『叄』 android開發怎麼讓一個按鈕生效

android開發怎麼讓一個按鈕生效
Button button1 = findviewById(R.id.button1);
button1 .setOnclickListen(new {//點擊事件

);

『肆』 android開發點擊按鈕沒有效果是怎麼回事,就是一個普通的按鈕,也沒有注冊事件。謝謝

你應該自定義了背景,這樣的話你點擊就沒效果了。
把背景定義為選擇器,這樣就有效果了。

『伍』 android中如何設置圖片按鈕的點擊效果,就是一點擊圖片,會顯示一種被按下去的感覺,而不是買有任何反應

可以使用這樣的一個xml布局
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
// 獲取焦點時候按鈕的背景狀態
<item android:drawable="@drawable/btn_green_pressed" android:state_enabled="true" android:state_focused="true"/>
// 被按下時候按鈕的背景狀態
<item android:drawable="@drawable/btn_green_pressed" android:state_enabled="true" android:state_pressed="true"/>
//正常狀態下按鈕的狀態
<item android:drawable="@drawable/btn_green_normal"/>

</selector>
把按鈕的背景設置為這個布局引用就行了.試試吧騷年

『陸』 安卓按鈕按下效果怎麼設置呢怎麼設置按鈕圓角和按下效果

可以通過shape設置圓角

<?xml version="1.0" encoding="utf-8"?>
<!-- shape如果不聲明形狀默認是正方形 -->
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<!-- 設置圓角 -->
<corners android:radius="2dp" >
</corners>
<!-- 設置填充色 -->
<solid android:color="#4285f4" >
</solid>
<!-- 設置邊框的顏色和寬度 -->
<stroke
android:width="1dp"
android:color="#4285f4" >
</stroke>
</shape>
通過selector設置點擊效果

button_bg.xml
<?xml version="1.0" encoding="utf-8"?>
<!-- 這個是用於控制按鈕組背景的文件 -->
<selector xmlns:android="http://schemas.android.com/apk/res/android">

<!-- **點擊時效果**********背景引用的資源*************************是否獲得焦點*********************是否按下******* -->
<item android:drawable="@drawable/button_p" android:state_focused="true" android:state_pressed="false"/>
<item android:drawable="@drawable/button_p" android:state_focused="true" android:state_pressed="true"/>
<item android:drawable="@drawable/button_p" android:state_focused="false" android:state_pressed="true"/>

<!-- **************沒有任何操作時顯示的背景************** -->
<item android:drawable="@drawable/button_n"></item>
</selector>
在xml文件中設置button的background屬性。
android:background="@drawable/button_bg"

『柒』 如何在Android中實現漸顯按鈕的左右滑動效果

MainActivity文件中代碼:
package com.android.buttonpageflipper;
import android.app.Activity;
import android.graphics.PixelFormat;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.Gravity;
import android.view.MotionEvent;
import android.view.View;
import android.view.WindowManager;
import android.view.WindowManager.LayoutParams;
import android.widget.ImageView;
import android.widget.ViewFlipper;
/**
* Android實現帶漸顯按鈕的左右滑動效果
* 自然狀態下按鈕不可見,觸摸屏幕時顯示按鈕
* @author Administrator
*
*/
public class MainActivity extends Activity {
//聲明兩個按鈕,分別代表向左和向右滑動
private ImageView btnLeft=null;
private ImageView btnRight=null;
//設置WindowManager
private WindowManager wm=null;
private WindowManager.LayoutParams wmParams=null;
//ImageView的alpha值
private int mAlpha = 0;
private boolean isHide;
private ViewFlipper viewFlipper = null;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
setTitle("Android實現漸顯按鈕的左右滑動效果");
viewFlipper = (ViewFlipper) this.findViewById(R.id.myViewFlipper);
//初始化左右按鈕
initImageButtonView();
}
/**
* 初始化懸浮按鈕
*/
private void initImageButtonView(){
//獲取WindowManager
wm=(WindowManager)getApplicationContext().getSystemService("window");
//設置LayoutParams相關參數
wmParams = new WindowManager.LayoutParams();
//設置window type
wmParams.type=LayoutParams.TYPE_PHONE;
//設置圖片格式,效果為背景透明
wmParams.format=PixelFormat.RGBA_8888;
//設置Window flag參數
wmParams.flags=LayoutParams.FLAG_NOT_TOUCH_MODAL
| LayoutParams.FLAG_NOT_FOCUSABLE;
//設置x、y初始值
wmParams.x=0;
wmParams.y=0;
//設置窗口長寬數據
wmParams.width=50;
wmParams.height=50;
//創建左右按鈕
createLeftButtonView();
createRightButtonView();
}
/**
* 設置左邊按鈕
*/
private void createLeftButtonView(){
btnLeft=new ImageView(this);
btnLeft.setImageResource(R.drawable.left);
btnLeft.setAlpha(0);
btnLeft.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
//上一個圖像
viewFlipper.setInAnimation(MainActivity.this, R.anim.push_left_in);
viewFlipper.setOutAnimation(MainActivity.this, R.anim.push_left_out);
viewFlipper.showPrevious();
}
});
//調整窗口
wmParams.gravity=Gravity.LEFT|Gravity.CENTER_VERTICAL;
//顯示圖像
wm.addView(btnLeft, wmParams);
}
/**
* 設置右邊按鈕
*/
private void createRightButtonView(){
btnRight=new ImageView(this);
btnRight.setImageResource(R.drawable.right);
btnRight.setAlpha(0);
btnRight.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
//下一個圖像
viewFlipper.setInAnimation(MainActivity.this, R.anim.push_right_in);
viewFlipper.setOutAnimation(MainActivity.this, R.anim.push_right_out);
viewFlipper.showNext();
}
});
//調整窗口
wmParams.gravity=Gravity.RIGHT|Gravity.CENTER_VERTICAL;
//顯示圖像
wm.addView(btnRight, wmParams);
}
/**
* 設置按鈕漸顯效果
*/
private Handler mHandler = new Handler()
{
public void handleMessage(Message msg) {
if(msg.what==1 && mAlpha<255){
//通過設置不透明度設置按鈕的漸顯效果
mAlpha += 50;
if(mAlpha>255)
mAlpha=255;
btnLeft.setAlpha(mAlpha);
btnLeft.invalidate();
btnRight.setAlpha(mAlpha);
btnRight.invalidate();
if(!isHide && mAlpha<255)
mHandler.sendEmptyMessageDelayed(1, 100);
}else if(msg.what==0 && mAlpha>0){
mAlpha -= 10;
if(mAlpha<0)
mAlpha=0;
btnLeft.setAlpha(mAlpha);
btnLeft.invalidate();
btnRight.setAlpha(mAlpha);
btnRight.invalidate();
if(isHide && mAlpha>0)
mHandler.sendEmptyMessageDelayed(0, 800);
}
}
};
private void showImageButtonView(){
isHide = false;
mHandler.sendEmptyMessage(1);
}
private void hideImageButtonView(){
new Thread(){
public void run() {
try {
Thread.sleep(1500);
isHide = true;
mHandler.sendEmptyMessage(0);
} catch (Exception e) {

}
}
}.start();
}
@Override
public boolean onTouchEvent(MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_MOVE:
case MotionEvent.ACTION_DOWN:
showImageButtonView();
break;
case MotionEvent.ACTION_UP:
hideImageButtonView();
break;
}
return true;
}
@Override
public void onDestroy(){
super.onDestroy();
//在程序退出(Activity銷毀)時銷毀窗口
wm.removeView(btnLeft);
wm.removeView(btnRight);
}
}

『捌』 Android開發給多個按鈕設置點擊效果的問題

這個可以在xml布局文件中為每個Button設置一樣的style,而這個style就是xml文件(包含selector的xml)。

『玖』 Android的動態設置按鈕的點擊效果.

在代碼中設置。
class FaceButtonListener implements OnTouchListener{
@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_DOWN){
faceButton.setImageDrawable(R.drawable.按下的圖片)
}else if(event.getAction() == MotionEvent.ACTION_UP){
faceButton.setImageDrawable(R.drawable.松開的圖片)
}
return false;
}
}

熱點內容
安卓錄制的視頻為什麼有迴音 發布:2025-01-24 19:25:31 瀏覽:445
ip代理伺服器搭建 發布:2025-01-24 19:25:29 瀏覽:285
188腳本 發布:2025-01-24 19:25:19 瀏覽:820
電子商務搭建伺服器的模式 發布:2025-01-24 19:15:13 瀏覽:153
電腦怎麼連接伺服器存儲 發布:2025-01-24 19:13:32 瀏覽:350
qq郵箱傳文件夾怎麼傳 發布:2025-01-24 19:03:22 瀏覽:764
a5手動擋有哪些配置 發布:2025-01-24 19:03:10 瀏覽:415
萌點星球安卓怎麼修改磚石 發布:2025-01-24 19:02:08 瀏覽:391
php遠程連接mysql資料庫 發布:2025-01-24 19:00:37 瀏覽:346
雲計算加密 發布:2025-01-24 18:50:25 瀏覽:176