Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用Seekbar更改片段类中的TextView值_Java_Android_Seekbar_Android Seekbar - Fatal编程技术网

Java 使用Seekbar更改片段类中的TextView值

Java 使用Seekbar更改片段类中的TextView值,java,android,seekbar,android-seekbar,Java,Android,Seekbar,Android Seekbar,我使用的是Seekbar库,所以当我拖动seeker时,我希望textview会用seeker的值进行更新,但不幸的是,我的应用程序崩溃了。我得到一个错误,上面写着“在TextView上找不到资源”。 代码如下: RangeSeekBar seekBar1; seekBar1 = (RangeSeekBar)rootView.findViewById(R.id.seekBar); seekBar1.setValue(10); seekBar1.setOnRangeChangedListener

我使用的是Seekbar库,所以当我拖动seeker时,我希望textview会用seeker的值进行更新,但不幸的是,我的应用程序崩溃了。我得到一个错误,上面写着“在TextView上找不到资源”。 代码如下:

RangeSeekBar seekBar1;
seekBar1 = (RangeSeekBar)rootView.findViewById(R.id.seekBar);

seekBar1.setValue(10);
seekBar1.setOnRangeChangedListener(new RangeSeekBar.OnRangeChangedListener() {
        @Override
        public void onRangeChanged(RangeSeekBar view, float min, float max, boolean isFromUser) {
            seekBar1.setProgressDescription((int)min+"%");
            TextView txtAmount;
            txtAmount = (TextView)rootView.findViewById(R.id.txtAmount);
            txtAmount.setText((int) min);
        }
});

解决方案:您不能像这样将int设置为文本视图,请尝试以下方法:

txtAmount.setText(Float.toString(min));
您使用的重载将查找字符串资源标识符,但在本例中不存在该标识符。下面是将CharSequence作为参数()的


很高兴知道:如果您现在想知道int如何成为setText的参数,那么它非常简单。在应用程序中,您可以有一个
strings.xml
文件,该文件定义了应用程序中要使用的一组资源字符串:

<resources>
    <string name="test">This is a test</string>
</resources>

解决方案:您不能像这样将int设置为文本视图,请尝试以下方法:

txtAmount.setText(Float.toString(min));
您使用的重载将查找字符串资源标识符,但在本例中不存在该标识符。下面是将CharSequence作为参数()的


很高兴知道:如果您现在想知道int如何成为setText的参数,那么它非常简单。在应用程序中,您可以有一个
strings.xml
文件,该文件定义了应用程序中要使用的一组资源字符串:

<resources>
    <string name="test">This is a test</string>
</resources>

如果将一个整数传递给setText,android希望该值是一个资源。系统正在尝试查找id等于min的资源。您需要将min转换为字符串

因此,要使其工作更改
txtmount.setText((int)min)
to
txtmount.setText(String.valueOf(min));

如果将整数传递给setText,android希望该值是一个资源。系统正在尝试查找id等于min的资源。您需要将min转换为字符串

因此,要使其工作更改
txtmount.setText((int)min)
to
txtmount.setText(String.valueOf(min));

谢谢你的回答。谢谢你的回答。