2017-02-01 7 views
0

TimePickerDailogで「method'show(android.support.v4.app.FragmentManager、 java.lang.String) 'メソッド 'show(android.support.v4.app.FragmentManager、java.lang.String)'を解決できません

他のウェブサイトからこのチュートリアルを取得しましたが、出力は取得されず、同じエラーが発生しました。 私はstackoverflowで同じ質問を参照しますが、私は質問を投稿した結果を取得していません。私にエラーを与えて、この行で

: -

dFragment.show(getFragmentManager(),"Time Picker"); 

ここでコード: -

public class Daily_Task extends Fragment { 
    public Daily_Task() {}; 
    Button submittask; 
    View view; 

    EditText starttime, endtime; 
    EditText Taskname, Detail; 
    @Override 
    public View onCreateView(LayoutInflater inflater, final ViewGroup container, Bundle savedInstanceState) { 
     View view = inflater.inflate(R.layout.activity_daily__task, container, false); 
     getActivity().setTitle("Task"); 
     starttime = (EditText) view.findViewById(R.id.start_time); 
     endtime = (EditText) view.findViewById(R.id.End_time); 
     submittask = (Button) view.findViewById(R.id.add_task_button); 

     starttime.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       // Initialize a new time picker dialog fragment 
       DialogFragment dFragment = new TimePickerFragment(); 

       // Show the time picker dialog fragment 
       dFragment.show(getFragmentManager(),"Time Picker"); 

      } 
     }); 

     return view; 
    } 

TimePickerFragment.java

package com.Weal.sachin.omcom; 

/** 
* Created by sachin on 2/1/2017. 
*/ 

import android.app.AlertDialog; 
import android.app.TimePickerDialog; 
import android.os.Bundle; 
import android.widget.TextView; 
import android.app.DialogFragment; 
import android.app.Dialog; 
import java.util.Calendar; 
import android.widget.TimePicker; 

public class TimePickerFragment extends DialogFragment implements TimePickerDialog.OnTimeSetListener{ 

    @Override 
    public Dialog onCreateDialog(Bundle savedInstanceState){ 
     // Get a Calendar instance 
     final Calendar calendar = Calendar.getInstance(); 
     // Get the current hour and minute 
     int hour = calendar.get(Calendar.HOUR_OF_DAY); 
     int minute = calendar.get(Calendar.MINUTE); 

     /* 
      Creates a new time picker dialog with the specified theme. 

       TimePickerDialog(Context context, int themeResId, 
        TimePickerDialog.OnTimeSetListener listener, 
        int hourOfDay, int minute, boolean is24HourView) 
     */ 

     // TimePickerDialog Theme : THEME_DEVICE_DEFAULT_LIGHT 
     TimePickerDialog tpd = new TimePickerDialog(getActivity(), 
       AlertDialog.THEME_DEVICE_DEFAULT_LIGHT,this,hour,minute,false); 

     // TimePickerDialog Theme : THEME_DEVICE_DEFAULT_DARK 
     TimePickerDialog tpd2 = new TimePickerDialog(getActivity(), 
       AlertDialog.THEME_DEVICE_DEFAULT_DARK,this,hour,minute,false); 

     // TimePickerDialog Theme : THEME_HOLO_DARK 
     TimePickerDialog tpd3 = new TimePickerDialog(getActivity(), 
       AlertDialog.THEME_HOLO_DARK,this,hour,minute,false); 

     // TimePickerDialog Theme : THEME_HOLO_LIGHT 
     TimePickerDialog tpd4 = new TimePickerDialog(getActivity(), 
       AlertDialog.THEME_HOLO_LIGHT,this,hour,minute,false); 

     // TimePickerDialog Theme : THEME_TRADITIONAL 
     TimePickerDialog tpd5 = new TimePickerDialog(getActivity(), 
       AlertDialog.THEME_TRADITIONAL,this,hour,minute,false); 

     // Return the TimePickerDialog 
     return tpd; 
    } 

    public void onTimeSet(TimePicker view, int hourOfDay, int minute){ 
     // Do something with the returned time 
     TextView tv = (TextView) getActivity().findViewById(R.id.start_time); 
     tv.setText("HH:MM\n" + hourOfDay + ":" + minute); 
    } 
} 

答えて

2

この

のように試してみてください

android.app.DialogFragment

dFragment.show(getActivity().getFragmentManager(),"Time Picker"); 

についてandroid.support.v4.app.DialogFragment

dFragment.show(getActivity().getSupportFragmentManager(),"Time Picker"); 

およびこの断片を保持する活動は、私はこれを使用し、その作業dFragment.show(getActivity()AppCombatActivity

+1

を拡張する必要があります。getFragmentManager() 、 "時間ピッカー"); – Andie

+0

これは動作していますが、私はAm Pmも設定したいと思います。 24時間形式で表示されています@Trucket – Andie

+0

12時間形式 'calendar.get(Calendar.HOUR)'を使用しています – arjun

関連する問題