Вы очень близки.Вам нужно передать данные в ваш Intent
.Это состоит из двух частей:
1)
Когда вы создаете свой Intent
, вы добавляете дополнительные данные для этого намерения.Например, вы можете добавить String
с именем ON_VISIBLE и установить для него значение "true".Вот некоторый код для добавления дополнений к созданному вами намерению:
Intent notificationIntent = new Intent(this, DontTouchMyDroidActivity.class);
notificationIntent.putExtra("ON_VISIBLE", "true");
notificationIntent.putExtra("SOME_OTHER_DATA", "look at help for putExtra()");
Это добавляет дополнительную информацию как часть Bundle
к Intent
(обратитесь за помощью к Bundle
& Intent.putExtras()
)
2)
Когда вы получаете свой Intent
, вам необходимо извлечь из него эту информацию.Вот некоторый код для извлечения Bundle
из вашего Intent
.Затем вы можете использовать значения, чтобы определить, хотите ли вы показать или скрыть кнопки.
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
// retrieve bundle extras passed into this intent
String onButtonVisible = "false";
Bundle extras = getIntent().getExtras();
if (extras != null)
{
onButtonVisible = extras.getString("ON_VISIBLE");
}
Boolean makeVisible = Boolean.valueOf(onButtonVisible);
if (makeVisible)
{
// make your ON button visible
}
}
Это метод, который будет вызываться при создании вашего Activity
.
Если ваш Activity
все еще жив в фоновом режиме, то вам нужно сделать что-то похожее в методе Activity.onNewIntent(Intent intent)
/** Called if activity is being brought in from background by a new intent. */
@Override
protected void onNewIntent(Intent intent)
{
Bundle extras = intent().getExtras();
if (extras != null)
{
onButtonVisible = extras.getString("ON_VISIBLE");
}
// do something similar here
}
Так что короткий ответ, что выдобавьте «дополнительные» к вашему Intent
при его создании.Эти «дополнения» добавляются к Bundle
, который вы можете запросить при запуске Activity
.А также, чтобы знать, что есть 2 метода, о которых вы должны знать, где вы можете запросить дополнительные материалы.
Немного Googling on Intent, дополнительные функции, Bundle, должны заполнить любую информацию, которую я пропустил.