我试图制作一个Android应用并需要一些帮助,我想制作一个有src1的imagebutton1已经改变了它的src1和一个textbox1文本" a"当点击src2并且textbox1文本变为" b"如果再次点击则更改为src1并将文本更改为" a"等等... 我以前在vb.net中通过
执行此操作 Private Sub units_Click(sender As Object, e As EventArgs) Handles units.Click
counter = counter + 1
If (-1) ^ counter < 0 Then
units.Image = WindowsApplication1.My.Resources.Resources.lup
Label3.Text = "a"
Else
units.Image = WindowsApplication1.My.Resources.Resources.ldown
Label3.Text = "b"
End If
End Sub
请帮助并提及每行的内容,因为我是java的新手
答案 0 :(得分:1)
我认为你需要看一本Java书,其中有很多,例如Thinking in Java。阅读Android documentation,那里有很多信息 这个问题在你读完之后非常基本。
textView.setOnClickListener(new View.OnClickListener() {
public int counter;
@Override
public void onClick(View v) {
counter += 1;
if (counter % 2 == 0) {
imageView.setImageResource(R.drawable.ic_one);
textView.setText("Text 1");
} else {
imageView.setImageResource(R.drawable.ic_two);
textView.setText("Text 2");
}
}
});
答案 1 :(得分:0)
如果我理解正确,您想要按下按钮更改图像和文字? 你应该做的是在你的Activity中建立一个监听器: 要将图像从URL加载到ImageView,请访问以下主题:
https://stackoverflow.com/a/18953695/5223744
使用上面的类,您的代码应如下所示:
imgCBButton = (ImageButton) findViewById(R.id.imgBTN);
txtCBText = (TextView) findViewById(R.id.txt);
txtCBText.setText("a");
final String firstURL = "www.yourFirstURL"; // Setting the firs URL
final String secondURL = "www.yourSecondURL"; // Setting the second URL
new ImageLoadTask(firstURL, imgCBButton).execute(); // Making a new ImageLoadTask class and passing the default values
imgCBButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) { // Setting Listener on the imgButton
if(indicator == false){
txtCBText.setText("b"); // If the boolean == false change the text to "b"
new ImageLoadTask(secondURL, imgCBButton).execute(); // change the IMG URL
indicator = true; // Changing the boolean to true
}else {
txtCBText.setText("a");
new ImageLoadTask(firstURL, imgCBButton).execute();
indicator = false;
}
}
});
}
别忘了在Manifest中设置权限:
<uses-permission android:name="android.permission.INTERNET" />
答案 2 :(得分:-1)
如果您在活动中工作,则此代码应该有效:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.your_view);
yourButton = (ImageButton) findViewById(R.id.your_button);
yourTextView = (TextView) findViewById(R.id.your_textview);
yourButton.setTag(R.drawable.src1);
yourButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (yourButton.getTag() == R.drawable.src1) {
yourButton.setImageResource(R.drawable.src2);
yourTextView.setText("b");
yourButton.setTag(R.drawable.src2);
} else {
yourButton.setImageResource(R.drawable.src1);
yourTextView.setText("a");
yourButton.setTag(R.drawable.src1);
}
}
});
}