java - Selecting Arrival and exit time using time picker in android -
here selecting arrival , exit time using imageview of timepickerfragment, dialogfragment. question how select exit time..when selecting exit time show in arrival time text box only. how solve problem me.
here code arrival , exit time using 2 text box , 2 image view button.
import java.util.calendar; import android.os.bundle; import android.annotation.suppresslint; import android.app.dialog; import android.app.timepickerdialog; import android.support.v4.app.dialogfragment; import android.support.v4.app.fragmentactivity; import android.text.format.dateformat; import android.view.menu; import android.view.view; import android.widget.edittext; import android.widget.timepicker; @suppresslint("validfragment") public class mainactivity extends fragmentactivity { edittext arrtime,exittime; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); } public void selectarrivaltime(view view) { dialogfragment newfragment = new timepickerfragment(); newfragment.show(getsupportfragmentmanager(), "timepicker"); } public void selectexittime(view view) { dialogfragment newfragment = new timepickerfragment(); newfragment.show(getsupportfragmentmanager(), "timepicker"); } public void populatesetarrtime(int hourofday, int minute) { arrtime = (edittext)findviewbyid(r.id.edittext1); arrtime.settext(+hourofday+":"+minute); } public void populatesetexittime(int hourofday, int minute) { exittime= (edittext)findviewbyid(r.id.edittext2); exittime.settext(+hourofday+":"+minute); } public class timepickerfragment extends dialogfragment implements timepickerdialog.ontimesetlistener { @override public dialog oncreatedialog(bundle savedinstancestate) { final calendar calendar = calendar.getinstance(); int hour = calendar.get(calendar.hour_of_day); int minute = calendar.get(calendar.minute); return new timepickerdialog(getactivity(), this, hour, minute, dateformat.is24hourformat(getactivity())); } public void ontimeset(timepicker view, int hourofday, int minute) { // todo auto-generated method stub populatesetarrtime(hourofday, minute); } public void ontimeset1(timepicker view, int hourofday, int minute) { // todo auto-generated method stub populatesetexittime(hourofday, minute); } } @override public boolean oncreateoptionsmenu(menu menu) { // inflate menu; adds items action bar if present. getmenuinflater().inflate(r.menu.main, menu); return true; } }
this xml layout.
<relativelayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingbottom="@dimen/activity_vertical_margin" android:paddingleft="@dimen/activity_horizontal_margin" android:paddingright="@dimen/activity_horizontal_margin" android:paddingtop="@dimen/activity_vertical_margin" tools:context=".mainactivity" > <textview android:id="@+id/textview1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_alignparenttop="true" android:layout_marginleft="22dp" android:layout_margintop="67dp" android:text="arrival time" /> <textview android:id="@+id/textview2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignleft="@+id/textview1" android:layout_below="@+id/edittext1" android:layout_margintop="30dp" android:text="exit time" /> <edittext android:id="@+id/edittext1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_aligntop="@+id/textview1" android:layout_torightof="@+id/textview1" android:clickable="false" android:ems="10" android:focusable="false" android:focusableintouchmode="false" android:inputtype="time" /> <edittext android:id="@+id/edittext2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignbaseline="@+id/textview2" android:layout_alignbottom="@+id/textview2" android:layout_alignleft="@+id/edittext1" android:clickable="false" android:ems="10" android:focusable="false" android:focusableintouchmode="false" android:inputtype="time" > </edittext> <imagebutton android:id="@+id/imagebutton1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignleft="@+id/textview2" android:layout_below="@+id/edittext2" android:layout_margintop="51dp" android:contentdescription="@string/selectarrtime" android:onclick="selectarrivaltime" android:src="@drawable/ic_launcher" /> <imagebutton android:id="@+id/imagebutton2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignright="@+id/edittext2" android:layout_aligntop="@+id/imagebutton1" android:layout_marginright="33dp" android:contentdescription="@string/selectexittime" android:onclick="selectexittime" android:src="@drawable/ic_launcher" /> </relativelayout>
if select arrival time shows time in arrival edit text box , if select exit time shows time in same arrival edit text box not displaying in exit edit text box how slove pls me in advance.
@suppresslint("validfragment") public class mainactivity extends fragmentactivity { edittext arrtime,exittime; static type=""; //changed @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); imagebutton b1=(imagebutton)findviewbyid(r.id.imagebutton1); //changed here b1.setonclicklistener(new view.onclicklistener() { @override public void onclick(view view) { settime("arrival"); } }); imagebutton b2=(imagebutton)findviewbyid(r.id.imagebutton2); b2.setonclicklistener(new view.onclicklistener() { @override public void onclick(view view) { settime("exit"); } }); ///to here } public void settime(string type) { //function changed mainactivity.type=type; dialogfragment newfragment = new timepickerfragment(); newfragment.show(getsupportfragmentmanager(), "timepicker"); } public void populatetime(int hourofday, int minute) { //function changed if(type.equals("arrival") { arrtime = (edittext)findviewbyid(r.id.edittext1); arrtime.settext(+hourofday+":"+minute); } else if(type.equals("exit") { arrtime = (edittext)findviewbyid(r.id.edittext2); exittime.settext(+hourofday+":"+minute); } } public class timepickerfragment extends dialogfragment implements timepickerdialog.ontimesetlistener { @override public dialog oncreatedialog(bundle savedinstancestate) { final calendar calendar = calendar.getinstance(); int hour = calendar.get(calendar.hour_of_day); int minute = calendar.get(calendar.minute); return new timepickerdialog(getactivity(), this, hour, minute, dateformat.is24hourformat(getactivity())); } public void ontimeset(timepicker view, int hourofday, int minute) { // todo auto-generated method stub populatetime(hourofday, minute); //changed } } @override public boolean oncreateoptionsmenu(menu menu) { // inflate menu; adds items action bar if present. getmenuinflater().inflate(r.menu.main, menu); return true; } }
also delete line android:onclick line both imagebuttons in xml file
Comments
Post a Comment