Так что для жизни я не могу найти причину, по которой нужно дважды щелкнуть на дату начала и время начала для открытия диалога Picker. Я много раз искал эти форумы, и все они были в основном связаны с редактированием текстовых полей, тогда как моя - простая кнопка, но onclicklistener занимает два удара. Заранее спасибо. < /P>
Это мой класс: < /p>
package com.shotsevolved.app
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.DialogFragment;
import android.support.v4.app.FragmentActivity;
import android.view.View;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.Toast;
import com.parse.FindCallback;
import com.parse.Parse;
import com.parse.ParseException;
import com.parse.ParseGeoPoint;
import com.parse.ParseObject;
import com.parse.ParseQuery;
import com.parse.SaveCallback;
import java.util.List;
public class DealCreator extends FragmentActivity {
String mUsername;
String companyName;
ParseGeoPoint location;
String title;
double mOldPrice;
double mNewPrice;
boolean isFree;
boolean isUnlimited;
String mDescription;
int mUses;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Parse.initialize(this, "Ztgl9DAaj4XPrDnS2Ro8jNHiaNnTPFCeF6V1Gm71", "26QMHWwfHmxKfwMvKemaEXH2XsFxpO5sR8Csuo9v");
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_deal_creator);
final Button create = (Button)findViewById(R.id.createButton);
final ProgressBar progress = (ProgressBar)findViewById(R.id.progressIcon);
final LinearLayout view = (LinearLayout)findViewById(R.id.linView);
final LinearLayout view1 = (LinearLayout)findViewById(R.id.linView1);
final LinearLayout main = (LinearLayout)findViewById(R.id.mainLinear);
final CheckBox freeBox = (CheckBox)findViewById(R.id.freeBox);
final EditText oldPrice = (EditText)findViewById(R.id.oldPrice);
final EditText newPrice = (EditText)findViewById(R.id.newPrice);
final CheckBox unlimited = (CheckBox)findViewById(R.id.unlimitedBox);
final EditText uses = (EditText)findViewById(R.id.uses);
final Button date = (Button)findViewById(R.id.startDate);
final Button time = (Button)findViewById(R.id.startTime);
create.setVisibility(View.INVISIBLE);
Intent intent = getIntent();
mUsername = intent.getStringExtra("key");
ParseQuery query = ParseQuery.getQuery("appUsers");
query.whereEqualTo("username", mUsername);
query.findInBackground(new FindCallback() {
public void done(List user, ParseException e) {
if(user.size() == 1 && e == null){
int admin = user.get(0).getInt("admin");
if(admin == 2){
ParseQuery query = ParseQuery.getQuery("AdminNames");
query.whereEqualTo("username", mUsername);
query.findInBackground(new FindCallback() {
@Override
public void done(final List user, ParseException e) {
if(user.size() == 1 && e == null){
unlimited.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked == true){
uses.setVisibility(View.INVISIBLE);
view1.removeView(uses);
}else{
uses.setVisibility(View.VISIBLE);
view1.addView(uses);
}
}
});
freeBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked == true){
oldPrice.setVisibility(View.INVISIBLE);
newPrice.setVisibility(View.INVISIBLE);
view.removeView(oldPrice);
view.removeView(newPrice);
}else{
oldPrice.setVisibility(View.VISIBLE);
newPrice.setVisibility(View.VISIBLE);
view.addView(oldPrice);
view.addView(newPrice);
}
}
});
date.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showDatePickerDialog(main);
}
});
time.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showTimePickerDialog(main);
}
});
progress.setVisibility(View.GONE);
view.removeView(progress);
create.setVisibility(View.VISIBLE);
create.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(freeBox.isChecked()){
isFree = true;
mOldPrice = 0;
mNewPrice = 0;
}else{
mOldPrice = Double.parseDouble(oldPrice.getText().toString());
mNewPrice = Double.parseDouble(newPrice.getText().toString());
isFree = false;
}
if(unlimited.isChecked()){
isUnlimited = true;
mUses = 0;
}else{
mUses = Integer.parseInt(uses.getText().toString());
isUnlimited = false;
}
//Call create deal class
deal();
}
});
}else{
Context context = getApplicationContext();
CharSequence text = "Error!!! Database Hacked!";
int duration = Toast.LENGTH_LONG;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
}
}
});
}else{
Context context = getApplicationContext();
CharSequence text = "Error!!! You are not an Admin!";
int duration = Toast.LENGTH_LONG;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
}
}else{
Context context = getApplicationContext();
CharSequence text = "Error!!! Database Hacked!";
int duration = Toast.LENGTH_LONG;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
}
}
});
}
private void deal() {
ParseObject newDeal = new ParseObject("Deals");
newDeal.put("uses", mUses);
newDeal.put("unlimitedUses", isUnlimited);
newDeal.put("description", mDescription);
newDeal.put("free", isFree);
newDeal.put("title", title);
newDeal.put("oldPrice", mOldPrice);
newDeal.put("newPrice", mNewPrice);
newDeal.put("location", location);
newDeal.put("username", mUsername);
newDeal.put("companyName", companyName);
newDeal.saveInBackground(new SaveCallback() {
@Override
public void done(ParseException e) {
Context context = getApplicationContext();
CharSequence text = "Deal Saved";
int duration = Toast.LENGTH_SHORT;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
}
});
}
public void showTimePickerDialog(View v) {
DialogFragment newFragment = new TimePickerFragment();
newFragment.show(getSupportFragmentManager(), "timePicker");
}
public void showDatePickerDialog(View v) {
DialogFragment newFragment = new DatePickerFragment();
newFragment.show(getSupportFragmentManager(), "datePicker");
}
}
< /code>
И это мои фрагменты: < /p>
Дата: < /p>
package com.shotsevolved.app;
import android.app.DatePickerDialog;
import android.app.Dialog;
import android.os.Bundle;
import android.support.v4.app.DialogFragment;
import android.widget.DatePicker;
import java.util.Calendar;
public class DatePickerFragment extends DialogFragment
implements DatePickerDialog.OnDateSetListener {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
// Use the current date as the default date in the picker
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);
// Create a new instance of DatePickerDialog and return it
return new DatePickerDialog(getActivity(), this, year, month, day);
}
public void onDateSet(DatePicker view, int year, int month, int day) {
// Do something with the date chosen by the user
}
}
< /code>
время: < /p>
package com.shotsevolved.app;
import android.app.Dialog;
import android.app.TimePickerDialog;
import android.os.Bundle;
import android.support.v4.app.DialogFragment;
import android.text.format.DateFormat;
import android.widget.TimePicker;
import java.util.Calendar;
public 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
}
}
< /code>
и, наконец, мой xml: < / p > < b r / > < b r / > < c o d e > & l t ; L i n e a r L a y o u t x m l n s : a n d r o i d = " h t t p : / / s c h e m a s . a n d r o i d . c o m / a p k / r e s / a n d r o i d " < b r / > a n d r o i d : b a c k g r o u n d = " # 1 e 1 c 1 c " < b r / > a n d r o i d : i d = " @ + i d / r o o t " < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " m a t c h _ p a r e n t " < b r / > a n d r o i d : o r i e n t a t i o n = " v e r t i c a l " & g t ; < b r / > < b r / > & l t ; L i n e a r L a y o u t < b r / > a n d r o i d : l a y o u t _ w i d t h = " f i l l _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " @ d i m e n / h e i g h t " < b r / > a n d r o i d : l a y o u t _ a l i g n P a r e n t T o p = " t r u e " < b r / > a n d r o i d : b a c k g r o u n d = " @ c o l o r / p u r p l e " < b r / > x m l n s : a n d r o i d = " h t t p : / / s c h e m a s . a n d r o i d . c o m / a p k / r e s / a n d r o i d " & g t ; < b r / > < b r / > & l t ; L i n e a r L a y o u t < b r / > a n d r o i d : o r i e n t a t i o n = " h o r i z o n t a l " < b r / > a n d r o i d : l a y o u t _ w i d t h = " f i l l _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " f i l l _ p a r e n t " & g t ; < b r / > < b r / > & l t ; I m a g e B u t t o n < b r / > a n d r o i d : i d = " @ + i d / b t n _ b a c k F r o m S e t t i n g s " < b r / > a n d r o i d : l a y o u t _ w i d t h = " @ d i m e n / w i d t h " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " f i l l _ p a r e n t " < b r / > a n d r o i d : b a c k g r o u n d = " @ d r a w a b l e / u i _ b u t t o n _ p u r p l e " < b r / > a n d r o i d : c o n t e n t D e s c r i p t i o n = " @ s t r i n g / d e s c " < b r / > a n d r o i d : s r c = " @ d r a w a b l e / i c o _ l e f t " / & g t ; < b r / > < b r / > & l t ; L i n e a r L a y o u t < b r / > a n d r o i d : l a y o u t _ w i d t h = " @ d i m e n / d i v i d e r _ s i z e " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " f i l l _ p a r e n t " < b r / > a n d r o i d : b a c k g r o u n d = " @ c o l o r / d a r k _ p u r p l e " & g t ; < b r / > & l t ; / L i n e a r L a y o u t & g t ; < b r / > < b r / > & l t ; T e x t V i e w < b r / > a n d r o i d : i d = " @ + i d / m a i n L o g i n " < b r / > a n d r o i d : l a y o u t _ w i d t h = " 0 d i p " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " f i l l _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ w e i g h t = " 1 " < b r / > a n d r o i d : g r a v i t y = " c e n t e r " < b r / > a n d r o i d : t a g = " b o l d " < b r / > a n d r o i d : t e x t = " @ s t r i n g / d e a l C r e a t o r " < b r / > a n d r o i d : t e x t C o l o r = " @ c o l o r / w h i t e " < b r / > a n d r o i d : t e x t S i z e = " @ d i m e n / t e x _ s i z e _ x x l a r g e " / & g t ; < b r / > < b r / > & l t ; L i n e a r L a y o u t < b r / > a n d r o i d : l a y o u t _ w i d t h = " @ d i m e n / d i v i d e r _ s i z e " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " f i l l _ p a r e n t " < b r / > a n d r o i d : b a c k g r o u n d = " @ c o l o r / d a r k _ p u r p l e " & g t ; < b r / > & l t ; / L i n e a r L a y o u t & g t ; < b r / > < b r / > & l t ; / L i n e a r L a y o u t & g t ; < b r / > & l t ; / L i n e a r L a y o u t & g t ; < b r / > < b r / > < b r / > < b r / > & l t ; S c r o l l V i e w < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " m a t c h _ p a r e n t " & g t ; < b r / > < b r / > & l t ; L i n e a r L a y o u t < b r / > a n d r o i d : l a y o u t _ w i d t h = " f i l l _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " f i l l _ p a r e n t " < b r / > a n d r o i d : o r i e n t a t i o n = " v e r t i c a l " < b r / > a n d r o i d : i d = " @ + i d / m a i n L i n e a r " & g t ; < b r / > < b r / > & l t ; L i n e a r L a y o u t < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " w r a p _ c o n t e n t " < b r / > a n d r o i d : o r i e n t a t i o n = " v e r t i c a l " < b r / > a n d r o i d : p a d d i n g = " @ d i m e n / d i m _ 2 0 " < b r / > a n d r o i d : i d = " @ + i d / l i n V i e w " & g t ; < b r / > < b r / > & l t ; P r o g r e s s B a r < b r / > a n d r o i d : l a y o u t _ w i d t h = " w r a p _ c o n t e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " w r a p _ c o n t e n t " < b r / > a n d r o i d : i d = " @ + i d / p r o g r e s s I c o n " < b r / > a n d r o i d : l a y o u t _ g r a v i t y = " c e n t e r _ h o r i z o n t a l " / & g t ; < b r / > < b r / > & l t ; E d i t T e x t < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " w r a p _ c o n t e n t " < b r / > a n d r o i d : i d = " @ + i d / t i t l e O f D e a l " < b r / > s t y l e = " @ s t y l e / E d i t T e x t _ P u r p l e " < b r / > a n d r o i d : h i n t = " T i t l e o f D e a l " < b r / > a n d r o i d : l a y o u t _ g r a v i t y = " c e n t e r _ h o r i z o n t a l " / & g t ; < b r / > < b r / > & l t ; E d i t T e x t < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " 2 0 0 d p " < b r / > a n d r o i d : i d = " @ + i d / d e a l D e s c r i p t i o n " < b r / > a n d r o i d : g r a v i t y = " t o p " < b r / > a n d r o i d : l a y o u t _ m a r g i n T o p = " @ d i m e n / d i m _ 1 0 " < b r / > s t y l e = " @ s t y l e / E d i t T e x t _ P u r p l e " < b r / > a n d r o i d : h i n t = " D e s c r i b e c o m p a n y a n d d e a l " < b r / > a n d r o i d : l a y o u t _ g r a v i t y = " c e n t e r _ h o r i z o n t a l " / & g t ; < b r / > < b r / > & l t ; C h e c k B o x < b r / > a n d r o i d : l a y o u t _ w i d t h = " w r a p _ c o n t e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " w r a p _ c o n t e n t " < b r / > a n d r o i d : t e x t = " F r e e " < b r / > a n d r o i d : l a y o u t _ m a r g i n T o p = " @ d i m e n / d i m _ 1 0 " < b r / > s t y l e = " @ s t y l e / C h e c k B o x _ P u r p l e " < b r / > a n d r o i d : t e x t C o l o r = " @ c o l o r / o f f w h i t e " < b r / > a n d r o i d : i d = " @ + i d / f r e e B o x " / & g t ; < b r / > < b r / > & l t ; E d i t T e x t < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " w r a p _ c o n t e n t " < b r / > a n d r o i d : i d = " @ + i d / o l d P r i c e " < b r / > a n d r o i d : l a y o u t _ m a r g i n T o p = " @ d i m e n / d i m _ 1 0 " < b r / > s t y l e = " @ s t y l e / E d i t T e x t _ P u r p l e " < b r / > a n d r o i d : h i n t = " O l d c o s t o f p r o d u c t " < b r / > a n d r o i d : i n p u t T y p e = " n u m b e r D e c i m a l " < b r / > a n d r o i d : l a y o u t _ g r a v i t y = " c e n t e r _ h o r i z o n t a l " / & g t ; < b r / > < b r / > & l t ; E d i t T e x t < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " w r a p _ c o n t e n t " < b r / > a n d r o i d : i d = " @ + i d / n e w P r i c e " < b r / > a n d r o i d : l a y o u t _ m a r g i n T o p = " @ d i m e n / d i m _ 1 0 " < b r / > a n d r o i d : i n p u t T y p e = " n u m b e r D e c i m a l " < b r / > s t y l e = " @ s t y l e / E d i t T e x t _ P u r p l e " < b r / > a n d r o i d : h i n t = " N e w c o s t o f p r o d u c t " < b r / > a n d r o i d : l a y o u t _ g r a v i t y = " c e n t e r _ h o r i z o n t a l " / & g t ; < b r / > & l t ; / L i n e a r L a y o u t & g t ; < b r / > < b r / > < b r / > < b r / > & l t ; L i n e a r L a y o u t < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " w r a p _ c o n t e n t " < b r / > a n d r o i d : o r i e n t a t i o n = " v e r t i c a l " < b r / > a n d r o i d : i d = " @ + i d / l i n V i e w 1 " < b r / > a n d r o i d : p a d d i n g R i g h t = " @ d i m e n / d i m _ 2 0 " < b r / > a n d r o i d : p a d d i n g L e f t="@dimen/dim_20">
Подробнее здесь: https://stackoverflow.com/questions/293 ... -of-button
Диалоги DatePicker и Timepicker принимают два нажатия кнопки ⇐ Android
Форум для тех, кто программирует под Android
1751530529
Anonymous
Так что для жизни я не могу найти причину, по которой нужно дважды щелкнуть на дату начала и время начала для открытия диалога Picker. Я много раз искал эти форумы, и все они были в основном связаны с редактированием текстовых полей, тогда как моя - простая кнопка, но onclicklistener занимает два удара. Заранее спасибо. < /P>
Это мой класс: < /p>
package com.shotsevolved.app
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.DialogFragment;
import android.support.v4.app.FragmentActivity;
import android.view.View;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.Toast;
import com.parse.FindCallback;
import com.parse.Parse;
import com.parse.ParseException;
import com.parse.ParseGeoPoint;
import com.parse.ParseObject;
import com.parse.ParseQuery;
import com.parse.SaveCallback;
import java.util.List;
public class DealCreator extends FragmentActivity {
String mUsername;
String companyName;
ParseGeoPoint location;
String title;
double mOldPrice;
double mNewPrice;
boolean isFree;
boolean isUnlimited;
String mDescription;
int mUses;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Parse.initialize(this, "Ztgl9DAaj4XPrDnS2Ro8jNHiaNnTPFCeF6V1Gm71", "26QMHWwfHmxKfwMvKemaEXH2XsFxpO5sR8Csuo9v");
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_deal_creator);
final Button create = (Button)findViewById(R.id.createButton);
final ProgressBar progress = (ProgressBar)findViewById(R.id.progressIcon);
final LinearLayout view = (LinearLayout)findViewById(R.id.linView);
final LinearLayout view1 = (LinearLayout)findViewById(R.id.linView1);
final LinearLayout main = (LinearLayout)findViewById(R.id.mainLinear);
final CheckBox freeBox = (CheckBox)findViewById(R.id.freeBox);
final EditText oldPrice = (EditText)findViewById(R.id.oldPrice);
final EditText newPrice = (EditText)findViewById(R.id.newPrice);
final CheckBox unlimited = (CheckBox)findViewById(R.id.unlimitedBox);
final EditText uses = (EditText)findViewById(R.id.uses);
final Button date = (Button)findViewById(R.id.startDate);
final Button time = (Button)findViewById(R.id.startTime);
create.setVisibility(View.INVISIBLE);
Intent intent = getIntent();
mUsername = intent.getStringExtra("key");
ParseQuery query = ParseQuery.getQuery("appUsers");
query.whereEqualTo("username", mUsername);
query.findInBackground(new FindCallback() {
public void done(List user, ParseException e) {
if(user.size() == 1 && e == null){
int admin = user.get(0).getInt("admin");
if(admin == 2){
ParseQuery query = ParseQuery.getQuery("AdminNames");
query.whereEqualTo("username", mUsername);
query.findInBackground(new FindCallback() {
@Override
public void done(final List user, ParseException e) {
if(user.size() == 1 && e == null){
unlimited.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked == true){
uses.setVisibility(View.INVISIBLE);
view1.removeView(uses);
}else{
uses.setVisibility(View.VISIBLE);
view1.addView(uses);
}
}
});
freeBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked == true){
oldPrice.setVisibility(View.INVISIBLE);
newPrice.setVisibility(View.INVISIBLE);
view.removeView(oldPrice);
view.removeView(newPrice);
}else{
oldPrice.setVisibility(View.VISIBLE);
newPrice.setVisibility(View.VISIBLE);
view.addView(oldPrice);
view.addView(newPrice);
}
}
});
date.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showDatePickerDialog(main);
}
});
time.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showTimePickerDialog(main);
}
});
progress.setVisibility(View.GONE);
view.removeView(progress);
create.setVisibility(View.VISIBLE);
create.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(freeBox.isChecked()){
isFree = true;
mOldPrice = 0;
mNewPrice = 0;
}else{
mOldPrice = Double.parseDouble(oldPrice.getText().toString());
mNewPrice = Double.parseDouble(newPrice.getText().toString());
isFree = false;
}
if(unlimited.isChecked()){
isUnlimited = true;
mUses = 0;
}else{
mUses = Integer.parseInt(uses.getText().toString());
isUnlimited = false;
}
//Call create deal class
deal();
}
});
}else{
Context context = getApplicationContext();
CharSequence text = "Error!!! Database Hacked!";
int duration = Toast.LENGTH_LONG;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
}
}
});
}else{
Context context = getApplicationContext();
CharSequence text = "Error!!! You are not an Admin!";
int duration = Toast.LENGTH_LONG;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
}
}else{
Context context = getApplicationContext();
CharSequence text = "Error!!! Database Hacked!";
int duration = Toast.LENGTH_LONG;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
}
}
});
}
private void deal() {
ParseObject newDeal = new ParseObject("Deals");
newDeal.put("uses", mUses);
newDeal.put("unlimitedUses", isUnlimited);
newDeal.put("description", mDescription);
newDeal.put("free", isFree);
newDeal.put("title", title);
newDeal.put("oldPrice", mOldPrice);
newDeal.put("newPrice", mNewPrice);
newDeal.put("location", location);
newDeal.put("username", mUsername);
newDeal.put("companyName", companyName);
newDeal.saveInBackground(new SaveCallback() {
@Override
public void done(ParseException e) {
Context context = getApplicationContext();
CharSequence text = "Deal Saved";
int duration = Toast.LENGTH_SHORT;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
}
});
}
public void showTimePickerDialog(View v) {
DialogFragment newFragment = new TimePickerFragment();
newFragment.show(getSupportFragmentManager(), "timePicker");
}
public void showDatePickerDialog(View v) {
DialogFragment newFragment = new DatePickerFragment();
newFragment.show(getSupportFragmentManager(), "datePicker");
}
}
< /code>
И это мои фрагменты: < /p>
Дата: < /p>
package com.shotsevolved.app;
import android.app.DatePickerDialog;
import android.app.Dialog;
import android.os.Bundle;
import android.support.v4.app.DialogFragment;
import android.widget.DatePicker;
import java.util.Calendar;
public class DatePickerFragment extends DialogFragment
implements DatePickerDialog.OnDateSetListener {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
// Use the current date as the default date in the picker
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);
// Create a new instance of DatePickerDialog and return it
return new DatePickerDialog(getActivity(), this, year, month, day);
}
public void onDateSet(DatePicker view, int year, int month, int day) {
// Do something with the date chosen by the user
}
}
< /code>
время: < /p>
package com.shotsevolved.app;
import android.app.Dialog;
import android.app.TimePickerDialog;
import android.os.Bundle;
import android.support.v4.app.DialogFragment;
import android.text.format.DateFormat;
import android.widget.TimePicker;
import java.util.Calendar;
public 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
}
}
< /code>
и, наконец, мой xml: < / p > < b r / > < b r / > < c o d e > & l t ; L i n e a r L a y o u t x m l n s : a n d r o i d = " h t t p : / / s c h e m a s . a n d r o i d . c o m / a p k / r e s / a n d r o i d " < b r / > a n d r o i d : b a c k g r o u n d = " # 1 e 1 c 1 c " < b r / > a n d r o i d : i d = " @ + i d / r o o t " < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " m a t c h _ p a r e n t " < b r / > a n d r o i d : o r i e n t a t i o n = " v e r t i c a l " & g t ; < b r / > < b r / > & l t ; L i n e a r L a y o u t < b r / > a n d r o i d : l a y o u t _ w i d t h = " f i l l _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " @ d i m e n / h e i g h t " < b r / > a n d r o i d : l a y o u t _ a l i g n P a r e n t T o p = " t r u e " < b r / > a n d r o i d : b a c k g r o u n d = " @ c o l o r / p u r p l e " < b r / > x m l n s : a n d r o i d = " h t t p : / / s c h e m a s . a n d r o i d . c o m / a p k / r e s / a n d r o i d " & g t ; < b r / > < b r / > & l t ; L i n e a r L a y o u t < b r / > a n d r o i d : o r i e n t a t i o n = " h o r i z o n t a l " < b r / > a n d r o i d : l a y o u t _ w i d t h = " f i l l _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " f i l l _ p a r e n t " & g t ; < b r / > < b r / > & l t ; I m a g e B u t t o n < b r / > a n d r o i d : i d = " @ + i d / b t n _ b a c k F r o m S e t t i n g s " < b r / > a n d r o i d : l a y o u t _ w i d t h = " @ d i m e n / w i d t h " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " f i l l _ p a r e n t " < b r / > a n d r o i d : b a c k g r o u n d = " @ d r a w a b l e / u i _ b u t t o n _ p u r p l e " < b r / > a n d r o i d : c o n t e n t D e s c r i p t i o n = " @ s t r i n g / d e s c " < b r / > a n d r o i d : s r c = " @ d r a w a b l e / i c o _ l e f t " / & g t ; < b r / > < b r / > & l t ; L i n e a r L a y o u t < b r / > a n d r o i d : l a y o u t _ w i d t h = " @ d i m e n / d i v i d e r _ s i z e " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " f i l l _ p a r e n t " < b r / > a n d r o i d : b a c k g r o u n d = " @ c o l o r / d a r k _ p u r p l e " & g t ; < b r / > & l t ; / L i n e a r L a y o u t & g t ; < b r / > < b r / > & l t ; T e x t V i e w < b r / > a n d r o i d : i d = " @ + i d / m a i n L o g i n " < b r / > a n d r o i d : l a y o u t _ w i d t h = " 0 d i p " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " f i l l _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ w e i g h t = " 1 " < b r / > a n d r o i d : g r a v i t y = " c e n t e r " < b r / > a n d r o i d : t a g = " b o l d " < b r / > a n d r o i d : t e x t = " @ s t r i n g / d e a l C r e a t o r " < b r / > a n d r o i d : t e x t C o l o r = " @ c o l o r / w h i t e " < b r / > a n d r o i d : t e x t S i z e = " @ d i m e n / t e x _ s i z e _ x x l a r g e " / & g t ; < b r / > < b r / > & l t ; L i n e a r L a y o u t < b r / > a n d r o i d : l a y o u t _ w i d t h = " @ d i m e n / d i v i d e r _ s i z e " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " f i l l _ p a r e n t " < b r / > a n d r o i d : b a c k g r o u n d = " @ c o l o r / d a r k _ p u r p l e " & g t ; < b r / > & l t ; / L i n e a r L a y o u t & g t ; < b r / > < b r / > & l t ; / L i n e a r L a y o u t & g t ; < b r / > & l t ; / L i n e a r L a y o u t & g t ; < b r / > < b r / > < b r / > < b r / > & l t ; S c r o l l V i e w < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " m a t c h _ p a r e n t " & g t ; < b r / > < b r / > & l t ; L i n e a r L a y o u t < b r / > a n d r o i d : l a y o u t _ w i d t h = " f i l l _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " f i l l _ p a r e n t " < b r / > a n d r o i d : o r i e n t a t i o n = " v e r t i c a l " < b r / > a n d r o i d : i d = " @ + i d / m a i n L i n e a r " & g t ; < b r / > < b r / > & l t ; L i n e a r L a y o u t < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " w r a p _ c o n t e n t " < b r / > a n d r o i d : o r i e n t a t i o n = " v e r t i c a l " < b r / > a n d r o i d : p a d d i n g = " @ d i m e n / d i m _ 2 0 " < b r / > a n d r o i d : i d = " @ + i d / l i n V i e w " & g t ; < b r / > < b r / > & l t ; P r o g r e s s B a r < b r / > a n d r o i d : l a y o u t _ w i d t h = " w r a p _ c o n t e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " w r a p _ c o n t e n t " < b r / > a n d r o i d : i d = " @ + i d / p r o g r e s s I c o n " < b r / > a n d r o i d : l a y o u t _ g r a v i t y = " c e n t e r _ h o r i z o n t a l " / & g t ; < b r / > < b r / > & l t ; E d i t T e x t < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " w r a p _ c o n t e n t " < b r / > a n d r o i d : i d = " @ + i d / t i t l e O f D e a l " < b r / > s t y l e = " @ s t y l e / E d i t T e x t _ P u r p l e " < b r / > a n d r o i d : h i n t = " T i t l e o f D e a l " < b r / > a n d r o i d : l a y o u t _ g r a v i t y = " c e n t e r _ h o r i z o n t a l " / & g t ; < b r / > < b r / > & l t ; E d i t T e x t < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " 2 0 0 d p " < b r / > a n d r o i d : i d = " @ + i d / d e a l D e s c r i p t i o n " < b r / > a n d r o i d : g r a v i t y = " t o p " < b r / > a n d r o i d : l a y o u t _ m a r g i n T o p = " @ d i m e n / d i m _ 1 0 " < b r / > s t y l e = " @ s t y l e / E d i t T e x t _ P u r p l e " < b r / > a n d r o i d : h i n t = " D e s c r i b e c o m p a n y a n d d e a l " < b r / > a n d r o i d : l a y o u t _ g r a v i t y = " c e n t e r _ h o r i z o n t a l " / & g t ; < b r / > < b r / > & l t ; C h e c k B o x < b r / > a n d r o i d : l a y o u t _ w i d t h = " w r a p _ c o n t e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " w r a p _ c o n t e n t " < b r / > a n d r o i d : t e x t = " F r e e " < b r / > a n d r o i d : l a y o u t _ m a r g i n T o p = " @ d i m e n / d i m _ 1 0 " < b r / > s t y l e = " @ s t y l e / C h e c k B o x _ P u r p l e " < b r / > a n d r o i d : t e x t C o l o r = " @ c o l o r / o f f w h i t e " < b r / > a n d r o i d : i d = " @ + i d / f r e e B o x " / & g t ; < b r / > < b r / > & l t ; E d i t T e x t < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " w r a p _ c o n t e n t " < b r / > a n d r o i d : i d = " @ + i d / o l d P r i c e " < b r / > a n d r o i d : l a y o u t _ m a r g i n T o p = " @ d i m e n / d i m _ 1 0 " < b r / > s t y l e = " @ s t y l e / E d i t T e x t _ P u r p l e " < b r / > a n d r o i d : h i n t = " O l d c o s t o f p r o d u c t " < b r / > a n d r o i d : i n p u t T y p e = " n u m b e r D e c i m a l " < b r / > a n d r o i d : l a y o u t _ g r a v i t y = " c e n t e r _ h o r i z o n t a l " / & g t ; < b r / > < b r / > & l t ; E d i t T e x t < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " w r a p _ c o n t e n t " < b r / > a n d r o i d : i d = " @ + i d / n e w P r i c e " < b r / > a n d r o i d : l a y o u t _ m a r g i n T o p = " @ d i m e n / d i m _ 1 0 " < b r / > a n d r o i d : i n p u t T y p e = " n u m b e r D e c i m a l " < b r / > s t y l e = " @ s t y l e / E d i t T e x t _ P u r p l e " < b r / > a n d r o i d : h i n t = " N e w c o s t o f p r o d u c t " < b r / > a n d r o i d : l a y o u t _ g r a v i t y = " c e n t e r _ h o r i z o n t a l " / & g t ; < b r / > & l t ; / L i n e a r L a y o u t & g t ; < b r / > < b r / > < b r / > < b r / > & l t ; L i n e a r L a y o u t < b r / > a n d r o i d : l a y o u t _ w i d t h = " m a t c h _ p a r e n t " < b r / > a n d r o i d : l a y o u t _ h e i g h t = " w r a p _ c o n t e n t " < b r / > a n d r o i d : o r i e n t a t i o n = " v e r t i c a l " < b r / > a n d r o i d : i d = " @ + i d / l i n V i e w 1 " < b r / > a n d r o i d : p a d d i n g R i g h t = " @ d i m e n / d i m _ 2 0 " < b r / > a n d r o i d : p a d d i n g L e f t="@dimen/dim_20">
Подробнее здесь: [url]https://stackoverflow.com/questions/29385668/datepicker-and-timepicker-dialogs-take-two-clickes-of-button[/url]
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Часовой пояс Wicket Datepicker «ui-datepicker-today» и «ui-datepicker-current-day»
Anonymous » » в форуме JqueryВ моем приложении мы используем Wicket, и для выбора даты я хочу применить следующий класс CSS «ui-datepicker-today» к тегу «td», который уже имеет класс CSS «ui-datepicker-current- день», то есть текущая дата должна иметь оба этих класса CSS.
Я... - 0 Ответы
- 61 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Часовой пояс Wicket Datepicker «ui-datepicker-today» и «ui-datepicker-current-day»
Anonymous » » в форуме CSSВ моем приложении мы используем Wicket, и для выбора даты я хочу применить следующий класс CSS «ui-datepicker-today» к тегу «td», который уже имеет класс CSS «ui-datepicker-current- день», то есть текущая дата должна иметь оба этих класса CSS.
Я... - 0 Ответы
- 64 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как установить AM/PM на английском языке в Timepicker xamarin Forms на устройствах iOS
Anonymous » » в форуме C#Я не могу отправить английский язык для утра и вечера с помощью TimePicker в Формы Хамарина. Я тестировал с пользовательским рендерингом, но безуспешно. Проблема возникает только на устройствах iOS, а не в симуляторе.
[! ] - 0 Ответы
- 16 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как установить AM/PM на английском языке в Timepicker xamarin Forms на устройствах iOS
Anonymous » » в форуме IOSЯ не могу отправить английский язык для утра и вечера с помощью TimePicker в Формы Хамарина. Я тестировал с пользовательским рендерингом, но безуспешно. Проблема возникает только на устройствах iOS, а не в симуляторе.
[! ] - 0 Ответы
- 25 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Jquery Timepicker устанавливает начальное время
Anonymous » » в форуме JqueryЯ использую jquery timepicker
Мне нужно установить начальное время.
let pickip_time = 08:31
if(pickip_time){
pickup_array = pickip_time.split( : );
$('#pickupTime').timepicker({timeFormat:'HH:mm TT',hour:pickup_array ,minute:pickup_array });... - 0 Ответы
- 28 Просмотры
-
Последнее сообщение Anonymous
-
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...