Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/225.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用对话框片段启动时间选择器 我试图从xml中显示的两个edittext启动一个时间选择器_Java_Android - Fatal编程技术网

Java 使用对话框片段启动时间选择器 我试图从xml中显示的两个edittext启动一个时间选择器

Java 使用对话框片段启动时间选择器 我试图从xml中显示的两个edittext启动一个时间选择器,java,android,Java,Android,我试着按照 我所尝试的: XML:: <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" android:padding="3dp" >

我试着按照


我所尝试的


XML::

<LinearLayout
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="horizontal"
                android:padding="3dp" >

                <TextView
                    android:id="@+id/lunch_from_textview_id"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@+id/image1"
                    android:layout_toRightOf="@+id/lunch_button_id"
                    android:gravity="center"
                    android:paddingLeft="30dp"
                    android:text="From"
                    android:textColor="#000000"
                    android:textSize="15sp" />

                <EditText
                    android:id="@+id/from_lunch_edit_text_id"
                    android:layout_width="55dp"
                    android:layout_height="40dp" />

                <TextView
                    android:id="@+id/lunch_to_textview_id"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignBottom="@+id/lunch_button_id"
                    android:layout_toRightOf="@+id/textView1"
                    android:gravity="center"
                    android:text="To"
                    android:textColor="#000000"
                    android:textSize="15sp" />

                <requestFocus />

                <EditText
                    android:id="@+id/to_lunch_edit_text_id"
                    android:layout_width="55dp"
                    android:layout_height="40dp"
                    android:ems="10" />
            </LinearLayout>
TimePickerDialog.java

import java.text.DateFormat;
import java.util.Calendar;

import android.app.Dialog;
import android.os.Bundle;
import android.support.v4.app.DialogFragment;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.TimePicker;

import com.androidbegin.jsonparsetutorial.R;

public class Buffet_offerings_breakfast_menu2 extends DialogFragment implements TimePickerDialog.OnTimeSetListener{

    RadioGroup radioGroup;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        // TODO Auto-generated method stub

        final View view=inflater.inflate(R.layout.buffet_offerings_breakfast_menu2, container, false);


        radioGroup = (RadioGroup) view.findViewById(R.id.radioGroup1);        

        radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener(){  
          public void onCheckedChanged(RadioGroup group, int checkedId) {
             // checkedId is the RadioButton selected
                   if(checkedId == R.id.SelectDaysRG_ID)
                   {
                      view.findViewById(R.id.linearLayout_individualdays).setVisibility(View.VISIBLE);
                   }
                   else if(checkedId == R.id.WeekdaysRG_ID)
                   {
                       view.findViewById(R.id.linearLayout_individualdays).setVisibility(View.INVISIBLE);
                   }
                   else if(checkedId == R.id.WeekendsRG_ID)
                   {
                       view.findViewById(R.id.linearLayout_individualdays).setVisibility(View.INVISIBLE);
                   }

          }
        });


        return view;
    }



    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        // Use the current time as the default values for the picker
        final Calendar c = Calendar.getInstance();
        int hour = c.get(Calendar.HOUR_OF_DAY);
        int minute = c.get(Calendar.MINUTE);

        // Create a new instance of TimePickerDialog and return it
        return new TimePickerDialog(getActivity(), this, hour, minute,
                DateFormat.is24HourFormat(getActivity()));
    }




    public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
        // Do something with the time chosen by the user
    }



}
public interface TimePickerDialog {

    public interface OnTimeSetListener {

    }

}

  • 如何完成此解决方案
  • 有什么想法吗

    • 看看这个。这是我在示例中使用的一个

          private TimePickerDialog showTimePicker(){
          TimePickerDialog timePicker = new TimePickerDialog(MainActivity.this, new TimePickerDialog.OnTimeSetListener() {
      
              @Override
              public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
                  // TODO Auto-generated method stub
                  mCalendar.set(Calendar.HOUR_OF_DAY, hourOfDay);
                  mCalendar.set(Calendar.MINUTE, minute);
                  mToday.set(Calendar.HOUR_OF_DAY, hourOfDay);
                  mToday.set(Calendar.MINUTE, minute);
                  updateTimeButtonText();
      
              }
          }, mCalendar.get(Calendar.HOUR_OF_DAY), mCalendar.get(Calendar.MINUTE), true);
          return timePicker;
      }
      

      按原样使用这个类

      public static class TimePickerFragment extends DialogFragment
                              implements TimePickerDialog.OnTimeSetListener {
      
      @Override
      public Dialog onCreateDialog(Bundle savedInstanceState) {
          // Use the current time as the default values for the picker
          final Calendar c = Calendar.getInstance();
          int hour = c.get(Calendar.HOUR_OF_DAY);
          int minute = c.get(Calendar.MINUTE);
      
          // Create a new instance of TimePickerDialog and return it
          return new TimePickerDialog(getActivity(), this, hour, minute,
                  DateFormat.is24HourFormat(getActivity()));
      }
      
      public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
          // Do something with the time chosen by the user
      }
      
      }

      }

      //在OnClick事件上调用showTimeDialog。您必须传递视图id

      //在onTimeSet方法中,您可以设置edittext内容


      如果它不起作用,请告诉我。

      单击EditText的事件??
      public void showTimePickerDialog(View v) {
      DialogFragment newFragment = new TimePickerFragment();
      newFragment.show(getSupportFragmentManager(), "timePicker");