设置图片之前。先把图片清空一下嘛。。
为什么椭圆?不清楚。
是不是两张图片。size(height*width)不一样。但是使用的是同一种布局。比如。自动扩充。
然后导致了。会有椭圆?

解决方案 »

  1.   

    怎么清空呢? 我试过imageButton.setBackgroundResource(0) 和   setBackgroundDrawable(null)都不行那个椭圆的确是图片尺寸的问题,谢谢!!
      

  2.   

    <ImageButton
                android:background="#0000"
                android:src="@drawable/xml_player_play"
                android:scaleType="centerCrop" />有src就不要设置background ,把background或者src删掉试试 
    按逻辑你的java代码是没错的
      

  3.   

    把selector中的   <item
            android:state_window_focused="false"
            android:drawable="@drawable/player_pause_default" />这些都去掉。写成如下模式 414<?xml version="1.0" encoding="UTF-8"?>    
    <selector xmlns:android="http://schemas.android.com/apk/res/android">    
        <item           android:state_pressed="false"  android:drawable="@drawable/button_add" />    
        <item           android:state_pressed="true"   android:drawable="@drawable/button_add_pressed" />    
       <item           android:state_focused="true"    android:drawable="@drawable/button_add_pressed" />    
    <item           android:drawable="@drawable/button_add" />    
    </selector>    
      

  4.   


    这里的background设为#0000是让imageButton的背景设为透明,就是只有图片,否则的话效果是一个系统默认风格的带有图片的button,按一下整个button变成橘黄色的效果,所以这个background应该是必要的
      

  5.   

    if( Global.bt_play_play == true )
    {
          play.setImageResource(R.drawable.xml_player_pause);
          Global.bt_play_play = false;
    }
    else
    {
          play.setImageResource(R.drawable.xml_player_play);
          Global.bt_play_play = true;
    }
      

  6.   

    setBackgroundResource这个你设置背景设置的,所以有椭圆,应该设置setImageResource,但是切换不了图,请问楼主解决没?我也遇到了
      

  7.   

    src配置的是原有ico大小
    setImageResource 这个是把ico原有大小放到按钮上
    setBackgroundResource 这个是背景铺满按钮,拉伸了,所以会重合