【问题标题】:android.widget.SeekBar cannot be cast to android.widget.TextViewandroid.widget.SeekBar 无法转换为 android.widget.TextView
【发布时间】:2012-03-05 23:16:38
【问题描述】:

我正在创建一个亮度控制对话框。但是我遇到的问题是,当我放置 textview 然后 seekbar 时会导致此错误:

android.widget.SeekBar 无法转换为 android.widget.TextView

由于某种原因,当 .xml 上的定位跟随 seekbar 然后是 textview 时,它似乎可以工作。

这里有一些代码:

LayoutInflater li_brightness = (LayoutInflater)this.getSystemService(LAYOUT_INFLATER_SERVICE);
            View v_brightness = li_brightness.inflate(R.layout.options_dialog_brightness, (ViewGroup)findViewById(R.id.ll_brightness_layout));
            bright_textView = (TextView)v_brightness.findViewById(R.id.brightness_text);
            brightBar = (SeekBar)v_brightness.findViewById(R.id.seekbar_brightness);
            confirm_brightness = (Button)v_brightness.findViewById(R.id.button_brightness);



            cResolver = getContentResolver();

            window = getWindow();

            brightBar.setMax(100);
            brightBar.setProgress(50);
            brightBar.setKeyProgressIncrement(1);

            bright_textView.setText("50".toString());


            brightBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {

                public void onStopTrackingTouch(SeekBar seekBar) {
                    // TODO Auto-generated method stub

                }

                public void onStartTrackingTouch(SeekBar seekBar) {
                    // TODO Auto-generated method stub

                }

                public void onProgressChanged(SeekBar seekBar, int progress,
                        boolean fromUser) {
                    // TODO Auto-generated method stub
                    float BackLightValue = (float)progress/100;
                    if(BackLightValue <= 0){
                        bright_textView.setText(String.valueOf(BackLightValue));
                    }


                      WindowManager.LayoutParams layoutParams = getWindow().getAttributes();
                      layoutParams.screenBrightness = BackLightValue;
                      getWindow().setAttributes(layoutParams);
                }
            });

【问题讨论】:

  • 添加 logcat 和 XML ,我认为但不确定,由于您的 id 来自 XML 布局文件的问题您将 textview 的 id 提供给 Seekbar 检查它!

标签: android xml


【解决方案1】:

尝试清理您的项目(Project > Clean from Eclipse 或命令行中的ant clean),看看是否能解决您的问题。有时,构建系统在 R 值方面与自身有点不同步,这种错误是症状之一。

【讨论】:

  • 你是完全正确的。出于某种原因,我在它不起作用之前尝试了这个。
猜你喜欢
  • 2012-06-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-26
  • 1970-01-01
  • 2014-08-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多