java - 尝试制作一个添加变量的简单应用程序,遇到一些问题

标签 java android eclipse timepicker addition

我有一个 24 小时格式的 timePicker,我想获取结果,将它们放入变量中,另外使用变量,然后将它们显示在 textView 中。 Eclipse 没有给我语法错误,但是当我运行该应用程序时,它在我启动“DisplayMessageActivity.java”时崩溃。

这是代码:

package com.example.sleepytime;

import android.annotation.SuppressLint;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.TimePicker;

@SuppressLint("NewApi")
public class DisplayMessageActivity extends Activity {

 TimePicker timepicker;
 public int hour1 = timepicker.getCurrentHour();
 public int min1 = timepicker.getCurrentMinute();


@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_display_message);
    // Show the Up button in the action bar. 
    getActionBar().setDisplayHomeAsUpEnabled(true);

    timepicker = (TimePicker) findViewById(R.id.timePicker1);
    timepicker.setIs24HourView(true);

    Button mButton = (Button) findViewById(R.id.button1);
    mButton.setOnClickListener(new View.OnClickListener() { 
        public void onClick(View printIt) {
        final TextView mTextView = (TextView) findViewById(R.id.print);
        mTextView.setText(hour1 + min1);
}   

}); 

}

}

最佳答案

这里

public int hour1 = timepicker.getCurrentHour();
public int min1 = timepicker.getCurrentMinute();

时间选择器null。您需要将其放入 onCreate() 中,如下所示

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_display_message);
    // Show the Up button in the action bar. 
    getActionBar().setDisplayHomeAsUpEnabled(true);

timepicker = (TimePicker) findViewById(R.id.timePicker1);
timepicker.setIs24HourView(true);
hour1 = timepicker.getCurrentHour();
min1 = timepicker.getCurrentMinute();

并改变

public int hour1 = timepicker.getCurrentHour();
public int min1 = timepicker.getCurrentMinute();

public int hour1;
public int min1;

这是我看到的第一个问题。可能还有更多,但这会让你无法继续前进。

 mButton.setOnClickListener(new View.OnClickListener() { 
    public void onClick(View printIt) {
    final TextView mTextView = (TextView) findViewById(R.id.print);
    String hourString = String.valueOf(hour);
    String minString = String.valueOf(minute);
    mTextView.setText(hourString + minString);

关于java - 尝试制作一个添加变量的简单应用程序,遇到一些问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15603255/

相关文章:

java - 使用 Clojure asm 库将 btytecode 写入文件

java - 如何组合验证两个或多个字段?在方法中

android - 如何在标记下移动 map ?

java - Tomcat登录后重定向到错误的url

eclipse - 带有 LWUIT 的 Eclipse 中的 J2ME - 出现异常

java - "java.lang.Object"无法解析

java - 时间:下周五怎么过?

java - 有人能说 DeckIterator 类有什么问题吗?

android - googleMap.getMyLocation();无法获取当前位置

Android Room一对一关系(获取外域)