• 热门专题

Android中实现跟踪单击状态的图片按钮

作者:  发布日期:2014-04-17 21:10:21
Tag标签:按钮  状态  图片  
  • 在很多情况下,我们都需要在android中自定义图片按钮,而不希望系统的东西出现,那么今天我们就来一起学习一下怎么样来实现这个简单的需求。

    (1)首先,准备好一些必须的资源,我这里准备了三张图片如下:

     

    (2)然后我们新建一个android project,在res下面新建一个drawable文件夹,在drawable文件夹下面创建button.xml文件,文件的具体内容如下:

    <?xml version="1.0" encoding="utf-8"?>
    <selector
      xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_pressed="true" android:drawable="@drawable/start_b"/>
        <item android:state_pressed="false" android:drawable="@drawable/start_a"/>
    </selector>
    同时我们需要将图片background.jpg、start_a.png、start_b.png三张图片拷贝到drawable-hdpi文件夹下。

     

    (3)修改layout下面的activity_main.xml,修改后的内容如下:

     

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="@drawable/background"
        android:gravity="center"
        android:orientation="vertical" >
    	
        
        <!-- android:background="#0000" 设置ImageButton的背景为透明-->
        <ImageButton
            android:id="@+id/start"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="#0000"
            android:src="@drawable/button" >
        </ImageButton>
    
    </LinearLayout>
    这里我们需要注意的是,要将ImageButton的background属性设置为"#0000",这样才不会影响到我们自定义的图片按钮效果

     

    (4)主Activity默认setContentView(R.layout.activity_main),MainActivity内容如下:

     

    import android.os.Bundle;
    import android.app.Activity;
    import android.view.Menu;
    
    public class MainActivity extends Activity {
    
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
    
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            getMenuInflater().inflate(R.menu.activity_main, menu);
            return true;
        }
    }

    最后右键工程run一下我们的android application,效果如下图:

     

     

About IT165 - 广告服务 - 隐私声明 - 版权申明 - 免责条款 - 网站地图 - 网友投稿 - 联系方式
本站内容来自于互联网,仅供用于网络技术学习,学习中请遵循相关法律法规