关于Android中TextView的setText方法报错

当Android报错如下:
Process: com.qiang.sifter, PID: 4759
android.content.res.Resources$NotFoundException: String resource ID #0x3

你想也不用想,一定是Textview控件显示数据出了问题:mTextview.setText(这里的传入的数据一定写成int类型了)。我们需要做的是eg:mTextView.setText("" + arg),也就是参数转化成字符串

当调用setText()方法时如果传入int型是不会被当成内容而是resourceID来使用!

所以报错!

解决方法:TextView.setText("" + arg)

转为String传入即可

案例如下:

package com.qiang.sifter;

import android.annotation.SuppressLint;
import android.view.View;
import android.widget.Button;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import com.qiang.But.MyUtils;

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

    private  Button btn;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btn =(Button)findViewById(R.id.btnse);
        btn.setOnClickListener(this);
    }

    @SuppressLint("SetTextI18n")
    @Override
    public void onClick(View view) {
    btn.setText(""+MyUtils.getRand(1,6));
    }
}

你可能感兴趣的:(Android,android-studio)