ok, i want to show a toast in my fragment using AlarmManager, but i dont know why my toast does not show, here is my code:
My Activity:
public class ScheduleMainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Configuration config = getResources().getConfiguration();
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
ScheduleMainFragment fragment = new ScheduleMainFragment();
if (config.orientation == Configuration.ORIENTATION_LANDSCAPE) {
fragmentTransaction.replace(android.R.id.content, fragment);
}else{
fragmentTransaction.replace(android.R.id.content, fragment);
}
fragmentTransaction.commit();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_login, menu);
return true;
}
}
Here is my fragment:
public class ScheduleMainFragment extends Fragment {
View _fragment;
private PendingIntent pendingIntent;
private AlarmManager manager;
CircularProgressButton mScheduleDate;
CircularProgressButton mMyScheduleDates;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
_fragment = inflater.inflate(R.layout.schedulemain_p, container, false);
SetupView(_fragment);
return _fragment;
}
private void SetupView(View fragment) {
Intent alarmIntent = new Intent(getActivity().getApplicationContext(),AlarmReceiver.class);
pendingIntent = PendingIntent.getBroadcast(getActivity(), 0, alarmIntent, 0);
mScheduleDate = (CircularProgressButton) _fragment.findViewById(R.id.btScheduleDate);
mMyScheduleDates = (CircularProgressButton) _fragment.findViewById(R.id.btMyScheduleDates);
mScheduleDate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
SetAlert((Button) view);
}
});
mMyScheduleDates.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
StopAlert((Button) view);
}
});
}
private void SetAlert(Button view) {
startAlarm();
}
private void StopAlert(Button view) {
}
public void startAlarm() {
manager = (AlarmManager) getActivity().getSystemService(Context.ALARM_SERVICE);
int interval = 10000;
manager.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), interval, pendingIntent);
Toast.makeText(getActivity(), "Alarm Set", Toast.LENGTH_SHORT).show();
}
My AlarmReceiver
public class AlarmReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "Alarma activada", Toast.LENGTH_SHORT);//When i debug this toast does not show in my fragment, i dont know what to do here.
}
}
here my AlarmReceiver receive my alarm, but does not show toast in my fragment, can anyone help me, i'm just new in android.
You didn't call the show()
method.
It should be:
Toast.makeText(context, "Alarma activada", Toast.LENGTH_SHORT).show();