gpt4 book ai didi

android - 在 ImageView 上查找图像 单击

转载 作者:行者123 更新时间:2023-11-29 01:54:10 25 4
gpt4 key购买 nike

我有一个带有按钮的 Activity ,其图像不断变化。现在单击当时带有特定图像的按钮应该会给出适当的 toast 。我正在使用 timerTask 来更改按钮图像。单击按钮中显示的不同图像时如何获得不同的响应(这里我的按钮是 ImageView )。

我的代码如下

Activity

     public class MainActivity extends Activity {
public ImageView ib;
int[] images= {R.drawable.alarm,R.drawable.ic_launcher,R.drawable.music_player,R.drawable.onetouchpanel,R.drawable.recorder};


@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ib=(ImageView) findViewById(R.id.imageButton1);
int delay = 0; // delay for 0 sec.
int period = 2000; // repeat every 2 seconds.
Timer timer = new Timer();
MyTimerTask myTask = new MyTimerTask();
timer.schedule(myTask, delay,period);
ib.setDrawingCacheEnabled(true);
//ib.measure(Me, heightMeasureSpec)

ib.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
Log.d("ayaz","button clicked");

}
});
}
class MyTimerTask extends TimerTask {
int i=0;
public void run() {
runOnUiThread( new Runnable() {
public void run() {
// ERROR
ib.setImageResource(images[i]);
i++;
if(i>images.length-1)
{
i=0;
}

}
});

}
}

最佳答案

将变量“i”从run() 移到MainActivity 类中。

同时向类中添加一个Button“names”数组:

private int i;
private final static String[] names = {"alarm", "launcher", "player", "onetouchpanel", "recorder"};

按如下方式修改您的代码以在 Button.onClick() 函数中显示一个 Toast:

ib.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
final String name = names[i];
Log.d("ayaz","button clicked: #" + i + ". " + name);
Toast.makeText(MainActivity.this, "ayaz: button clicked: #" + i + ". " + name,
Toast.LENGTH_LONG).show();
}
});

关于android - 在 ImageView 上查找图像 单击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16207657/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com