当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));
}
}