2017-04-14 26 views
0

私は完全な初心者なので、まだすべての概念を学んでいます。私は、フラグメントを使って2つの日付ピッカーを使ってアクティビティを作成しようとしています。ハイブの設定日は1、クイーンの誕生日の日付は1です.1つのアクティビティでも、別々のEditTextボックスにも入力できます。私を喜ばせることができる人はいますか? Br Iceni beekeeper。Android Date Picker Fragment - 2同じアクティビティで

+0

可能性のある重複した作業更新回答してみ[2異なるのEditTextで2 timepickerを設定する方法を?](http://stackoverflow.com/questions/41998592/how-to-set -2-timepicker-in-2-different-edittext) –

答えて

0

それは私のための

public class MainActivity extends AppCompatActivity implements DatePickerDialog.OnDateSetListener { 


    public static final String LOGTAG = "APIARYMANAGER"; 
    private static final String TAG = MainActivity.class.getSimpleName(); 
    private static String DATEPICKER_TAG = ""; 


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

    } 


    public void datePickerHiveSetupDate(View view) { 

     DatePickerFragmentSetupDate fragment = new DatePickerFragmentSetupDate(); 
     fragment.show(getSupportFragmentManager(), "date1"); 
    } 

    public void setHiveQueenBirthdayDate(View view) { 

     DatePickerFragmentQueenBDayDate fragment = new DatePickerFragmentQueenBDayDate(); 

     fragment.show(getSupportFragmentManager(), "date2"); 
    } 


    @Override 
    public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) { 

     Calendar cal = new GregorianCalendar(year, month, dayOfMonth); 

     if (DATEPICKER_TAG.trim().equals("SETUP_DATE")) 
      setHiveSetupDate(cal); 
     else 
      setHiveQBDayDate(cal); 


    } 

    public void setHiveSetupDate(final Calendar calendar) { 

     final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.SHORT, Locale.UK); 
     ((TextView) findViewById(R.id.editTextHiveSetupDate)).setText(dateFormat.format(calendar.getTime())); 
    } 

    public void setHiveQBDayDate(final Calendar calendar) { 

     final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.SHORT, Locale.UK); 
     ((TextView) findViewById(R.id.editTextHiveQueenBirthday)).setText(dateFormat.format(calendar.getTime())); 
    } 


    public static class DatePickerFragmentSetupDate extends DialogFragment { 
     @Override 
     public Dialog onCreateDialog(Bundle savedInstanceState) { 
      final Calendar c = Calendar.getInstance(); 
      int year = c.get(Calendar.YEAR); 
      int month = c.get(Calendar.MONTH); 
      int day = c.get(Calendar.DAY_OF_MONTH); 
      DATEPICKER_TAG = "SETUP_DATE"; 
      return new DatePickerDialog(getActivity(), 
        (DatePickerDialog.OnDateSetListener) getActivity(), year, month, day); 
     } 


    } 


    public static class DatePickerFragmentQueenBDayDate extends DialogFragment { 
     @Override 
     public Dialog onCreateDialog(Bundle savedInstanceState) { 
      final Calendar c = Calendar.getInstance(); 
      int year = c.get(Calendar.YEAR); 
      int month = c.get(Calendar.MONTH); 
      int day = c.get(Calendar.DAY_OF_MONTH); 
      DATEPICKER_TAG = "SETUP_QUEEN_DATE"; 
      return new DatePickerDialog(getActivity(), 
        (DatePickerDialog.OnDateSetListener) getActivity(), year, month, day); 
     } 

    } 


} 
+0

あなたのクイック返信ありがとうございました。あなたのコードに基づいて2つの日付ピッカーを実装しようとしました。私はonDateSetに問題があります。私は1つのメソッドを持つことができるように見えるので、両方のdatepickersは1つのEditTextボックスを更新します。 – IceniBeekeeper

+0

コードを投稿するにはどうすればよいですか? – IceniBeekeeper

+0

とあなたは2つの異なるedittextまたは1つのedittextを更新したいですか?それを説明してください。 – Sach

関連する問題