Как прочитать время в строке - PullRequest
1 голос
/ 13 декабря 2011

У меня есть класс 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 ]

2 голосов
/ 13 декабря 2011

вы можете получить вот так

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 голос
/ 13 декабря 2011

Метод TextView.getText () возвращает CharSequence, который можно использовать напрямую или преобразовать в строку с помощью метода toString, например

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