SeekBar是null?

时间:2015-12-08 05:23:19

标签: android

我正在做正常的findViewById但由于某些原因我的应用程序崩溃,因为SeekBar具有空值。它说

“java.lang.NullPointerException:尝试在空对象引用上调用虚方法'void android.widget.SeekBar.setMax(int)'”

public class SettingsScreen extends AppCompatActivity {


@Bind(R.id.workText)
TextView work;
@Bind(R.id.restText)
TextView rest;
@Bind(R.id.workSeekBar)
SeekBar workBar;
@Bind(R.id.restSeekBar)
SeekBar restBar;
@Bind(R.id.applyButton)
Button applyButton;

int maxWork = 60;
int minWork = 5;
int maxRest = 60;
int minRest = 1;

int desiredWorkTime;
int desiredRestTime;

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

    Intent intent = getIntent();
    Boolean isLoggedIn = intent.getBooleanExtra("currentUser", false);


    workBar.setMax(maxWork - minWork);
    workBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
        @Override
        public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {

            desiredWorkTime = minWork + progress;
            work.setText("Current: " + desiredWorkTime + " minutes");
        }

        @Override
        public void onStartTrackingTouch(SeekBar seekBar) {

        }

        @Override
        public void onStopTrackingTouch(SeekBar seekBar) {

        }
    });

    restBar.setMax(maxRest - minRest);
    restBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
        @Override
        public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {

            desiredRestTime = minRest + progress;
            work.setText("Current: " + desiredRestTime + " minutes");
        }

        @Override
        public void onStartTrackingTouch(SeekBar seekBar) {

        }

        @Override
        public void onStopTrackingTouch(SeekBar seekBar) {

        }
    });

}
}

0 个答案:

没有答案