如何将timepicker的时间读入字符串

时间:2011-12-13 07:59:30

标签: android string timepicker

我有一个timepicker课程,可以在挑选后显示时间。 我的问题是如何编写一个函数来检索字符串形式的时间(来自mTimeDisplay)而不是文本视图?

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    mTimeDisplay = (TextView) findViewById(R.id.time);
    mPickTime = (Button) findViewById(R.id.timepicker);


    //Pick time's click event listener
    mPickTime.setOnClickListener(new View.OnClickListener(){

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            showDialog(TIME_DIALOG_ID);
        }

    });




}

    // update time
    public void updatetime()
    {
        mTimeDisplay.setText(


                    new StringBuilder()
                            .append(pad(mhour)).append(":")
                            .append(pad(mminute))
                            .append(" to ")
                            .append(pad(mhour2)).append(":")
                            .append(pad(mminute2))
                            ); 
        }

        private static String pad(int c) {
            if (c >= 10)
                return String.valueOf(c);
            else
            return "0" + String.valueOf(c);
    }

2 个答案:

答案 0 :(得分:2)

你可以这样开始

StringBuilder sb = new StringBuilder()
.append(pad(mhour)).append(":")
.append(pad(mminute))
.append(" to ")
.append(pad(mhour2)).append(":")
.append(pad(mminute2));

String time = sb.toString() // or you can get directly value from sb.toString() as per you requirement

并将此行置于评论

/* mTimeDisplay.setText(
new StringBuilder()
 .append(pad(mhour)).append(":")    
.append(pad(mminute))
 .append(" to ")
.append(pad(mhour2)).append(":")
.append(pad(mminute2))
); */

答案 1 :(得分:1)

TextView.getText()方法返回CharSequence您可以直接使用或使用toString方法转换为字符串,例如

String time = mTimeDisplay.getText().toString();