当前位置:首页 » 安卓系统 » 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;
}
}

热点内容
wamp数据库 发布:2025-01-25 01:36:02 浏览:794
安卓通知栏怎么显示秒表 发布:2025-01-25 01:32:47 浏览:757
apk反编译入门 发布:2025-01-25 01:26:43 浏览:472
英雄联盟在哪投诉脚本 发布:2025-01-25 01:26:43 浏览:314
php在线统计 发布:2025-01-25 01:26:42 浏览:65
手机加密室 发布:2025-01-25 01:25:57 浏览:219
搭建excel服务器 发布:2025-01-25 01:25:19 浏览:1000
双系统win7和linux 发布:2025-01-25 01:25:19 浏览:606
为什么苹果手机摄像比安卓好 发布:2025-01-25 01:06:48 浏览:787
linux查看系统多少位 发布:2025-01-25 01:04:31 浏览:121