2014-10-01 2 views
0

У меня есть два текста редактирования в моем приложении, и я хочу называть сборщик времени в своем фокусе, и мне удавалось вызывать сборщиков времени на обоих редактах, но хочу добавить разные время как на редактируемый текст. У меня есть время начала редактирования текста и редактирования времени окончания. Я упоминаю свой код.Я хочу изменить два значения текстового значения при выборе таймера выбора

public class AccessWeekDays extends Activity 
{ 
    String message_selectedWeekDay; 
    TextView tvAdd; 
    TextView tvEdit; 
    TextView tvCurrentDay; 

    EditText edSub; 
    EditText edDesc; 
    EditText edStartTime; 
    EditText edEndTime; 
    TimePicker timepicksubject; 

    int phour; 
    int pminute; 
    Calendar calendar; 

     //listenner for start time 

       private TimePickerDialog.OnTimeSetListener mTimeSetListener = 
         new TimePickerDialog.OnTimeSetListener() { 
          public void onTimeSet(TimePicker view, int hourOfDay, int minute) 
          { 
           /*Date d=new Date(); 
           String myformat="hh:mm:a"; 
           SimpleDateFormat sdf = new SimpleDateFormat(myformat); 
           //String formated_time = sdf.format(calendar.getTime()); 
           String formated_time = sdf.format(d);*/ 
           phour = hourOfDay; 
           pminute = minute; 
           updateDisplaystart(); 

          } 

       private void updateDisplaystart() 
       { 

        edStartTime.setText(new StringBuilder() 
       .append(pad(phour)).append(":") 
       .append(pad(pminute))); 

       } 


       private String pad(int c) 
       { 

        if (c >= 10) 
          return String.valueOf(c); 
         else 
          return "0" + String.valueOf(c); 
       } 
      }; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) 
    { 

     super.onCreate(savedInstanceState); 
     setContentView(R.layout.adding_timtable_part); 

     calendar=Calendar.getInstance(); 

     tvAdd=(TextView)findViewById(R.id.textAdd); 
     tvEdit=(TextView)findViewById(R.id.textEdit); 
     tvCurrentDay=(TextView)findViewById(R.id.textCurentDay); 


     edSub=(EditText)findViewById(R.id.edSubjectname); 
     edDesc=(EditText)findViewById(R.id.edDesc); 
     edStartTime=(EditText)findViewById(R.id.edStartTime); 
     edEndTime=(EditText)findViewById(R.id.edEndTime); 

     timepicksubject=(TimePicker)findViewById(R.id.timePickersubject); 

     edSub.setVisibility(View.GONE); 
     edDesc.setVisibility(View.GONE); 
     edStartTime.setVisibility(View.GONE); 
     edEndTime.setVisibility(View.GONE); 

     Intent intent = getIntent(); 
     message_selectedWeekDay=intent.getExtras().getString("selectedweekdays"); 

     setCurrentDay(); 


     tvAdd.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 

       tvAdd.setText("Done"); 
       tvEdit.setText("Cancel"); 

       edSub.setVisibility(View.VISIBLE); 
       edDesc.setVisibility(View.VISIBLE); 
       edStartTime.setVisibility(View.VISIBLE); 
       edEndTime.setVisibility(View.VISIBLE); 

      } 
     }); 



     edStartTime.setOnFocusChangeListener(new OnFocusChangeListener() { 

      @Override 
      public void onFocusChange(View v, boolean hasFocus) { 
       showDialog(1); 

      } 
     }); 

     edEndTime.setOnFocusChangeListener(new OnFocusChangeListener() { 

      @Override 
      public void onFocusChange(View v, boolean hasFocus) { 
       showDialog(1); 

      } 
     }); 

    }//oncreate ends 


    @Override 
    @Deprecated 
    protected Dialog onCreateDialog(int id) 
    { 
     switch (id) 
     { 

       case 1: 

        return new TimePickerDialog(this, mTimeSetListener, phour, pminute,false); 
        // return new TimePickerDialog(context, callBack, hourOfDay, minute, is24HourView) 


       default: 
         break; 
      } 
          return null; 
     } 

Я зову updateDisplaystart() метод, который записывает значение редактирования текста и скажите мне, как я могу изменить значение времени редактирования текста конец ..

+0

В чем разница между временем начала и временем окончания –

+0

если вы хотите найти разницу между двумя сроками или датой ..? http://www.mkyong.com/java/how-to-calculate-date-time-difference-in-java/ посмотреть..пожалуйста, эта ссылка поможет u – SaravanaRaja

+0

время начала - время начала события и конца время окончания времени события – user3407138

ответ

0

Я хотел бы предложить вам этот путь:

Передайте EditText в showDialog и используйте его для изменения значения EditText.

Пример:

//your focus listener snippet 
    edStartTime.setOnFocusChangeListener(new OnFocusChangeListener() { 

     @Override 
     public void onFocusChange(View v, boolean hasFocus) { 
      showDialog(1, edStartTime); 

     } 
    }); 

    edEndTime.setOnFocusChangeListener(new OnFocusChangeListener() { 

     @Override 
     public void onFocusChange(View v, boolean hasFocus) { 
      showDialog(1, edEndTime); 

     } 
    }); 

    //showDialog method should be changed to handle second argument of EditText 
    public void showDialog(int id, EditText edText){ 
     //pass the EditText along with other arguments 
    } 

Теперь измените текст в том EditText, когда ваш onTimeSet дозвонились.