java - Toast动画中的CharSequence没有出现?安卓

标签 java android

我是 Android 开发的新手,所以这是我的问题。 我有一组按钮,我想在按下时显示一个 Toast 说“此按钮将启动”+ 按钮的 getText 值

编辑

按钮数组的声明和初始化代码。

 final Button buttons[] = new Button[6];
    buttons[0] = (Button) findViewById(R.id.button1);
    buttons[1] = (Button) findViewById(R.id.button2);
    buttons[2] = (Button) findViewById(R.id.button3);
    buttons[3] = (Button) findViewById(R.id.button4);
    buttons[4] = (Button) findViewById(R.id.button5);
    buttons[5] = (Button) findViewById(R.id.button6);

所以,

    for(i = 0; i< buttons.length; i++){
        buttons[i].setOnClickListener(new View.OnClickListener() {
            public void onClick(View v){
                Log.d("test","Why is this not appearing in logcat");
                CharSequence buttonvalue = buttons[i].getText();
                Context context = getApplicationContext();
                System.out.println(buttonvalue);
                CharSequence text = "This button will launch" + buttonvalue + " App!!";
                int duration = Toast.LENGTH_SHORT;

                Toast toast = Toast.makeText(context, text, duration);
                toast.show();
            }
        });
    }

应用程序编译正常,但一按下按钮就崩溃了。而且我似乎无法调试它,因为 System.out.println() 和 Logcat 根本没有出现,或者我只是看错地方了。那么我应该在哪里找到这些消息呢?

组件树: enter image description here 这是一个截图: enter image description here

最佳答案

尝试按照我的示例进行操作,在没有 LogCat 的情况下实现起来更简单:

 private static final int[] idArray = {R.id.button0, R.id.button1, R.id.button2, R.id.button3, R.id.button4, R.id.button5};

private Button[] bt = new Button[idArray.length];

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.start_layout);

    for (int i=0; i<idArray.length; i++) {
        final int b = i;
        bt [b] = (Button)findViewById(idArray[b]); // Fetch the view id from array
        bt [b].setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {

 Toast.makeText(getApplicationContext(),"This button will launch" + bt[b].getText().toString() + " App!!";,Toast.LENGTH_LONG).show();                }
        });

    }
}

关于java - Toast动画中的CharSequence没有出现?安卓,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39096885/

相关文章:

java - @CollectionTable 和 @ElementCollection 用法

java - 用于表示 Regex Java 的数据结构

android - 更改分辨率时,Google Play <compatible-screens> 会屏蔽三星设备

android - Kotshi 问题 - Unresolved KotshiApplicationJsonAdapterFactory 引用

JavaFX 默默地吞下拖动监听器中引发的异常

java - 创建动态 url android

java - 我无法使用 Gson 将 Json 文件解析为 java 对象

java - for循环从HashMap中获取值

Android: extends TabActivity deprecated,什么时候会出问题?

java - 有没有办法检查 or 语句中的哪个条件导致代码运行?