Android吐司烦恼

时间:2018-03-23 16:10:05

标签: android

我需要制作一个简单的Android应用程序作为我学校作业的一部分。该应用程序应该基本上显示一个图片和一个简短的文本,关于三个运动员(在我的情况下的战士)和一个吐司形式的报价。作为一个机器人的菜鸟,我想我自己走得很远,但现在我需要一些帮助来完成。我做了文字和图像部分,现在是吐司的东西。该应用程序显示吐司,但所有3个,一个接一个。我只是希望它显示与用户点击的战斗机相关的吐司,而不是所有三个。无论如何,这是代码:

有什么想法吗?谢谢:))

package com.example.skvik.myapplication;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity implements  
View.OnClickListener{
TextView tvHeaderMessage;
private static final
String qmirko = "Right leg hospital, left leg cemetery";
String qfedor = "I don't think about fights that didn't happen.";
String qminotauro = "Every time you lose, it's good because you see        
something is amiss. The guy who's on top with no effort just settles.";


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    initializeUI();
    initializeUI1();
    initializeUI2();
}

private void initializeUI2() {
    this.tvHeaderMessage = findViewById(R. id. fedor);
    this.tvHeaderMessage.setOnClickListener(this);
}

private void initializeUI1() {
    this.tvHeaderMessage = findViewById(R. id. minotauro);
    this.tvHeaderMessage.setOnClickListener(this);
}

private void initializeUI() {
    this.tvHeaderMessage = findViewById(R. id. tvmirko);
    this.tvHeaderMessage.setOnClickListener(this);

}
public void onClick(View view) {
    this.displayToast(qmirko);
    this.displayToast(qfedor);
    this.displayToast(qminotauro);
}
private void displayToast(String message) {
    Toast.makeText(this, message, Toast.LENGTH_SHORT).show();
}
}

2 个答案:

答案 0 :(得分:0)

您必须检查点击了哪个视图。 e.g。

public void onClick(View view) {
    if(view.getId() == R.id.qmirko) displayToast(qmirko);
    else if(view.getId() ...)
    // and so on

}

答案 1 :(得分:0)

尝试这样的事情并为每个视图分配不同的回调,而不是为所有视图分配1:

private void initializeUI1() {
    findViewById(R. id. minotauro).setOnClickListener(new View.OnClickListener() {
        public void onClick(View view) {
            MainActivity.displayToast(qminotauro);
    }});
}