use*_*415 30 android image imagebutton
我刚drawable在res文件夹下添加了一个新文件夹.在drawable文件夹中,我ic_launcher.png从drawable-hdpi文件夹中复制了该文件.ImageButton当我按下按钮时,我想通过新的标准图像更改标准图像.我写了一些代码,但是当我启动应用程序时,它崩溃了.
Button imgButton;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.imgButton).setOnClickListener(imgButtonHandler);
}
View.OnClickListener imgButtonHandler = new View.OnClickListener() {
public void onClick(View v) {
imgButton.setBackgroundResource(R.drawable.ic_launcher);
}
};
Run Code Online (Sandbox Code Playgroud)
编辑:我改为这个,这也行不通.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imgButton = (Button) findViewById(R.id.imgButton);
imgButton.setOnClickListener(imgButtonHandler);
}
View.OnClickListener imgButtonHandler = new View.OnClickListener() {
public void onClick(View v) {
imgButton.setBackgroundResource(R.drawable.ic_launcher);
}
};
Run Code Online (Sandbox Code Playgroud)
编辑2:这个工作.谢谢大家.
ImageButton button;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button= (ImageButton)findViewById(R.id.imgButton);
button.setOnClickListener(imgButtonHandler);
}
View.OnClickListener imgButtonHandler = new View.OnClickListener() {
public void onClick(View v) {
button.setBackgroundResource(R.drawable.ic_launcher);
}
};
Run Code Online (Sandbox Code Playgroud)
小智 58
这误导了我一点 - 应该是:) setImageResource而不是setBackgroundResource:)!
以下工作正常:
ImageButton btn = (ImageButton)findViewById(R.id.imageButton1);
btn.setImageResource(R.drawable.actions_record);
Run Code Online (Sandbox Code Playgroud)
而当使用setBackgroundResource实际图像按钮的图像停留时,背景图像被更改,这导致丑陋的imageButton对象
谢谢.
mis*_*anc 11
<ImageButton android:src="@drawable/image_btn_src" ... />
Run Code Online (Sandbox Code Playgroud)
image_btn_src.xml
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/icon_pressed"/>
<item android:state_pressed="false" android:drawable="@drawable/icon_unpressed"/>
</selector>
Run Code Online (Sandbox Code Playgroud)
那是因为imgButton为null.试试这个:
findViewById(R.id.imgButton).setBackgroundResource(R.drawable.ic_action_search);
Run Code Online (Sandbox Code Playgroud)
或者更容易阅读:
imgButton = (Button) findViewById(R.id.imgButton);
imgButton.setOnClickListener(imgButtonHandler);
Run Code Online (Sandbox Code Playgroud)
然后在onClick: imgButton.setBackgroundResource(R.drawable.ic_action_search);
| 归档时间: |
|
| 查看次数: |
106098 次 |
| 最近记录: |