Java 从选定的选项项触发单击设置侦听器
我想从所选的选项项触发单击侦听器设置 这是我对所选代码的选项项Java 从选定的选项项触发单击设置侦听器,java,android,Java,Android,我想从所选的选项项触发单击侦听器设置 这是我对所选代码的选项项 //cancel event added here @Override public boolean onOptionsItemSelected(MenuItem item) { // ClipData.Item menu_cancel_event=(ClipData.Item) findViewById(R.id.menu_cancel_event); // int Id = i
//cancel event added here
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// ClipData.Item menu_cancel_event=(ClipData.Item) findViewById(R.id.menu_cancel_event);
// int Id = item.getItemId();
switch (item.getItemId()) {
case R.id.menu_cancel_event:
eventMO.setIsDelete(1);
del();
return true;
}
return super.onOptionsItemSelected(item);
}
private void del() {
SQLiteDatabase db = dbHelper.getWritableDatabase();
final long Id = eventMO.getEventId();
db.delete("event", "Event_ID" + " = ?", new String[]{String.valueOf(Id)});
db.close();
}
这是我的点击监听设置
btn_create_button = (Button) findViewById(R.id.create_button);
btn_create_button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Instantiate Progress Dialog object
prgDialog = new ProgressDialog(OccasionActivity.this);
// Set Progress Dialog Text
prgDialog.setMessage("Please wait...");
// Set Cancelable as False
prgDialog.setCancelable(false);
prgDialog.show();
UserMO userMO = dbHelper.getRingeeUserData(1);
eventMO.setText(custom_Text.getText().toString());
eventMO.setPlace(event_Place.getText().toString());
eventMO.setEndTime(end_Time);
eventMO.setStartTime(start_Time);
try {
//date and time format changed here
String eventDate = btn_Date.getText().toString();
DateFormat date = new SimpleDateFormat("dd-M-yyyy");
Date date1 = date.parse(eventDate);
DateFormat convertDate = new SimpleDateFormat(" yyyy-MM-dd hh:mm:ss");
eventDate = convertDate.format(date1);
eventMO.setEventDate(eventDate);
} catch (ParseException e) {
e.printStackTrace();
}
//eventMO.setEventDate(btn_Date.getText().toString());
eventMO.setRingeeUserId(userMO.getRingeeUserId());
//event update functionality added here
final Long hidden_Text2 = eventId2;
if ((eventMO.getText() != null) && (eventMO.getPlace() != null) && (eventMO.getEventDate() != null)) {
if (hidden_Text2 != null) {
eventMO.setEventId(hidden_Text2);
new AsyncTask<Void, Void, String>() {
@Override
protected String doInBackground(Void... arg0) {
return eventDelegates.updateEvent(eventMO, context);
}
@Override
protected void onPostExecute(String arg0) {
prgDialog.dismiss();
Intent contactAct = new Intent(getApplicationContext(), UserDashBoardActivity.class);
// Clears History of Activity
contactAct.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(contactAct);
}
}.execute(null, null, null);
Toast.makeText(getApplicationContext(), "Details updated successfully", Toast.LENGTH_LONG).show();
btn\u创建按钮=(按钮)findViewById(R.id.create\u按钮);
btn_创建_按钮。setOnClickListener(新视图。OnClickListener(){
@凌驾
公共void onClick(视图v){
//实例化进度对话框对象
prgDialog=新建进度对话框(OccasionActivity.this);
//设置进度对话框文本
setMessage(“请稍候…”);
//将可取消设置为False
prgDialog.setCancelable(假);
prgDialog.show();
UserMO UserMO=dbHelper.getRingeeUserData(1);
eventMO.setText(自定义_Text.getText().toString());
setPlace(event_Place.getText().toString());
eventMO.setEndTime(结束时间);
eventMO.setStartTime(开始时间);
试一试{
//此处更改了日期和时间格式
字符串eventDate=btn_Date.getText().toString();
日期格式日期=新的简化格式(“dd-M-yyyy”);
Date date1=Date.parse(eventDate);
DateFormat convertDate=新的简化格式(“yyyy-MM-dd hh:MM:ss”);
eventDate=convertDate.format(日期1);
eventMO.setEventDate(eventDate);
}捕获(解析异常){
e、 printStackTrace();
}
//setEventDate(btn_Date.getText().toString());
eventMO.setRingeeUserId(userMO.getRingeeUserId());
//此处添加了事件更新功能
最终长隐藏_Text2=eventId2;
if((eventMO.getText()!=null)&&&(eventMO.getPlace()!=null)&&(eventMO.getEventDate()!=null)){
如果(隐藏的文本2!=null){
setEventId(隐藏的文本2);
新建异步任务(){
@凌驾
受保护的字符串doInBackground(无效…arg0){
返回eventDelegates.updateEvent(eventMO,context);
}
@凌驾
受保护的void onPostExecute(字符串arg0){
prgDialog.disclose();
Intent contactAct=newintent(getApplicationContext(),UserDashBoardActivity.class);
//清除活动的历史记录
contactAct.addFlags(意图、标志、活动、清除、顶部);
星触觉(contactAct);
}
}.执行(空,空,空);
Toast.makeText(getApplicationContext(),“详细信息已成功更新”,Toast.LENGTH_LONG.show();
我想从所选的选项项触发“单击时设置侦听器…”如何调用…请帮助我查找
我的代码
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_occasion, menu);
return true;
}
//cancel event added here
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// ClipData.Item menu_cancel_event=(ClipData.Item) findViewById(R.id.menu_cancel_event);
// int Id = item.getItemId();
switch (item.getItemId()) {
case R.id.menu_cancel_event:
eventMO.setIsDelete(1);
del();
//doOnCLickAndOnOptionSelected();
return true;
}
return super.onOptionsItemSelected(item);
}
private void del() {
SQLiteDatabase db = dbHelper.getWritableDatabase();
final long Id = eventMO.getEventId();
db.delete("event", "Event_ID" + " = ?", new String[]{String.valueOf(Id)});
db.close();
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_occasion);
context = getApplicationContext();
seekBar_startTime = (SeekBar) findViewById(R.id.seekBar1);
textView_startTime = (TextView) findViewById(R.id.textView1);
seekBar_endTime = (SeekBar) findViewById(R.id.seekBar2);
textView_endTime = (TextView) findViewById(R.id.textView2);
btn_Date = (Button) findViewById(R.id.event_date_button);
event_Place = (TextView) findViewById(R.id.Enter_Place);
custom_Text = (TextView) findViewById(R.id.Custom_Text);
btn_create_button = (Button) findViewById(R.id.create_button);
//menu_cancel_event=(button) findViewId(R.id.menu_cancel_event);
/*box1=(CheckBox) findViewById(R.id.check_box1);
box2=(CheckBox) findViewById(R.id.check_box2);
box3=(CheckBox) findViewById(R.id.check_box3);*/
sharedpreferences = context.getSharedPreferences(Constants.SHARED_PREFERENCE_NAME, Context.MODE_PRIVATE);
dbHelper = new DatabaseHelper(context);
btn_Date.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
DatePickerFragment newFragment = new DatePickerFragment();
newFragment.show(getFragmentManager(), "Occasion Date");
}
});
seekBar_startTime.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onProgressChanged(SeekBar seekBar, int progresValue, boolean fromUser) {
start_Time = String.valueOf(progresValue);
textView_startTime.setText("Event Start Time :" + progresValue);
}
});
seekBar_endTime.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onProgressChanged(SeekBar seekBar, int progresValue, boolean fromUser) {
end_Time = String.valueOf(progresValue);
textView_endTime.setText("Event End Time :" + progresValue);
}
});
//eventid get from OccasionFragment here
Bundle bundle = this.getIntent().getExtras();
if (bundle != null) {
Long eventId1 = bundle.getLong("EventID");
eventId2 = eventId1;
String eventName = bundle.getString("EventName");
custom_Text.setText(eventName);
String eventPlace = bundle.getString("EventPlace");
event_Place.setText(eventPlace);
String eventDate = bundle.getString("EventDate");
try {
//String eventDate = bundle.getString("EventDate");
//time string removed from date here
String result = eventDate.split(" ")[0];
DateFormat sourceDate = new SimpleDateFormat("yyyy-MM-dd");
// parse the date string into Date object
Date date = sourceDate.parse(result);
DateFormat convertDate = new SimpleDateFormat("dd-M-yyyy");
// format the date into another format
result = convertDate.format(date);
btn_Date.setText(result);
} catch (ParseException e) {
e.printStackTrace();
}
//Event Start Time and Event End Time string added before the time here
String eventStart = bundle.getString("EventStart");
textView_startTime.setText("Event Start Time :" + eventStart);
String eventEnd = bundle.getString("EventEnd");
textView_endTime.setText("Event End Time :" + eventEnd);
}
btn_create_button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Instantiate Progress Dialog object
//doOnCLickAndOnOptionSelected();
// code
prgDialog = new ProgressDialog(OccasionActivity.this);
// Set Progress Dialog Text
prgDialog.setMessage("Please wait...");
// Set Cancelable as False
prgDialog.setCancelable(false);
prgDialog.show();
UserMO userMO = dbHelper.getRingeeUserData(1);
eventMO.setText(custom_Text.getText().toString());
eventMO.setPlace(event_Place.getText().toString());
eventMO.setEndTime(end_Time);
eventMO.setStartTime(start_Time);
try {
//date and time format changed here
String eventDate = btn_Date.getText().toString();
DateFormat date = new SimpleDateFormat("dd-M-yyyy");
Date date1 = date.parse(eventDate);
DateFormat convertDate = new SimpleDateFormat(" yyyy-MM-dd hh:mm:ss");
eventDate = convertDate.format(date1);
eventMO.setEventDate(eventDate);
} catch (ParseException e) {
e.printStackTrace();
}
//eventMO.setEventDate(btn_Date.getText().toString());
eventMO.setRingeeUserId(userMO.getRingeeUserId());
//event update functionality added here
final Long hidden_Text2 = eventId2;
if ((eventMO.getText() != null) && (eventMO.getPlace() != null) && (eventMO.getEventDate() != null)) {
if (hidden_Text2 != null) {
eventMO.setEventId(hidden_Text2);
new AsyncTask<Void, Void, String>() {
@Override
protected String doInBackground(Void... arg0) {
return eventDelegates.updateEvent(eventMO, context);
}
@Override
protected void onPostExecute(String arg0) {
prgDialog.dismiss();
Intent contactAct = new Intent(getApplicationContext(), UserDashBoardActivity.class);
// Clears History of Activity
contactAct.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(contactAct);
}
}.execute(null, null, null);
Toast.makeText(getApplicationContext(), "Details updated successfully", Toast.LENGTH_LONG).show();
} else {
new AsyncTask<Void, Void, String>() {
@Override
protected String doInBackground(Void... arg0) {
return eventDelegates.addEvent(eventMO, context);
}
@Override
protected void onPostExecute(String eventId) {
prgDialog.dismiss();
SharedPreferences.Editor editor = sharedpreferences.edit();
editor.putString("eventId", eventId);
editor.commit();
Intent contactAct = new Intent(getApplicationContext(), ContactActivity.class);
// Clears History of Activity
contactAct.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(contactAct);
}
}.execute(null, null, null);
Toast.makeText(getApplicationContext(), "Details added successfully", Toast.LENGTH_LONG).show();
}
} else {
prgDialog.dismiss();
Toast.makeText(context, "Please check Event custom text or Event place or Event date field", Toast.LENGTH_LONG).show();
}
}
});
}
@SuppressLint("ValidFragment")
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) {
Date = new StringBuilder().append(year).append("-").append(month + 1).append("-").append(day).append(" ").toString();
btn_Date.setText(new StringBuilder().append(day).append("-").append(month + 1).append("-").append(year).append(" ").toString());
}
}
}
@覆盖
公共布尔onCreateOptions菜单(菜单){
//为菜单充气;这会将项目添加到操作栏(如果存在)。
getMenuInflater().充气(R.menu.menu\u场合,menu);
返回true;
}
//取消在此添加的事件
@凌驾
公共布尔值onOptionsItemSelected(菜单项项){
//ClipData.Item menu\u cancel\u event=(ClipData.Item)findViewById(R.id.menu\u cancel\u event);
//int Id=item.getItemId();
开关(item.getItemId()){
案例R.id.菜单\取消\事件:
eventMO.setIsDelete(1);
del();
//DOONCLICKANDONOPTIONSECTED();
返回true;
}
返回super.onOptionsItemSelected(项目);
}
私有void del(){
SQLiteDatabase db=dbHelper.getWritableDatabase();
final long Id=eventMO.getEventId();
db.delete(“event”,“event_ID”+“=?”,新字符串[]{String.valueOf(ID)});
db.close();
}
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_场合);
context=getApplicationContext();
seekBar_startTime=(seekBar)findViewById(R.id.seekBar1);
textView_startTime=(textView)findViewById(R.id.textView1);
seekBar_endTime=(seekBar)findViewById(R.id.seekBar2);
textView_endTime=(textView)findViewById(R.id.textView2);
btn_日期=(按钮)findViewById(R.id.event_日期按钮);
事件位置=(文本视图)findViewById(R.id.Enter\u位置);
custom_Text=(TextView)findViewById(R.id.custom_Text);
btn_create_button=(button)findviewbyd(R.id.create_button);
//菜单取消事件=(按钮)findViewId(R.id.menu取消事件);
/*box1=(复选框)findViewById(R.id.check_box1);
框2=(复选框)findViewById(R.id.check_框2);
box3=(复选框)findViewById(R.id.check_box3)*/
SharedReferences=context.getSharedReferences(Constants.SHARED\u PREFERENCE\u NAME,context.MODE\u PRIVATE);
dbHelper=新数据库助手(上下文);
btn_Date.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
DatePickerFragment newFragment=新的DatePickerFragment();
show(getFragmentManager(),“场合日期”);
}
});
seekBar_startTime.setonseekbarchaneglistener(新seekBar.onseekbarchaneglistener(){
@凌驾
TopTrackingTouch(SeekBar SeekBar)上的公共无效{
}
@凌驾
开始跟踪触摸时的公共无效(SeekBar SeekBar){
}
@O
class MyActivity extends Activity {
private void doOnCLickAndOnOptionSelected() {
// code
}
@Override
protected void onCreate(...) {
...
btn_create_button = (Button) findViewById(R.id.create_button);
btn_create_button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
doOnCLickAndOnOptionSelected();
}
}
...
someMenu.setOnOpttionsItemSelectedListener(new OnOpttionsItemSelectedListener {
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// ClipData.Item menu_cancel_event=(ClipData.Item) findViewById(R.id.menu_cancel_event);
// int Id = item.getItemId();
switch (item.getItemId()) {
case R.id.menu_cancel_event:
eventMO.setIsDelete(1);
del();
doOnCLickAndOnOptionSelected();
return true;
}
return super.onOptionsItemSelected(item);
}
}
}
}