Window w = getWindow();
w.setTitle("My title");
改變我目前的活動名稱,但它似乎並沒有工作。
任何人都可以指導我如何改變這種情況嗎?本身
Window w = getWindow();
w.setTitle("My title");
改變我目前的活動名稱,但它似乎並沒有工作。
任何人都可以指導我如何改變這種情況嗎?本身
嘗試的setTitle,像這樣:
setTitle("Hello StackOverflow");
只是一個供參考,您可以選擇從XML做到這一點。
在AndroidManifest.xml中,您可以用
android:label="My Activity Title"
或者
設置android:label="@strings/my_activity_label"
例子:
<activity
android:name=".Splash"
android:label="@string/splash_activity_title" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
如果你想它一個時間&使系統處理休息(不動態),然後在你的清單文件中這樣做:
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name_full" > //This is my custom title name on activity. <- The question is about this one.
<intent-filter android:label="@string/app_launcher_name" > //This is my custom Icon title name (launcher name that you see in android apps/homescreen)
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
這對我有效。
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment, container, false);
getActivity().setTitle("My Title");
//...
}
setTitle(getResources().getText(R.string.MyTitle));
我可以從清單文件中讀取活動標題嗎? – Sujay
@Sujay是的,你可以,在這裏你是: 嘗試int labelRes = getPackageManager()。getActivityInfo(getComponentName(),0).labelRes; Logger.d(this.getClass()。getSimpleName(),「labelRes:」+ labelRes); if(labelRes> 0 && getSupportActionBar()!= null)getSupportActionBar()。setTitle(labelRes); (ExceptionManager);}};}};}};}};}};}};}} catch(PackageManager.NameNotFoundException異常)Logger.d(this.getClass()。getSimpleName(),「exception caught:」+ Log.getStackTraceString(exception) } – user1510006
如果你想設置的Java文件標題,然後在活動的onCreate寫
setTitle("Your Title");
,如果你想在清單然後寫
<activity
android:name=".MainActivity"
android:label="Your Title" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
請編輯並填寫您的答案。 – luka5z
有一個更快的方式,只需使用
YourActivity.setTitle("New Title");
您還可以找到它的的onCreate()這個裏面,例如:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
this.setTitle("My Title");
}
順便說一句,你根本無法做的是調用的setTitle()以靜態方式不傳遞任何活動目的。
按下待機按鈕並使屏幕再次激活時,這不起作用。標題不更新。有任何想法嗎? –
這是因爲您的示例中不會調用onCreate()。您應該考慮使用另一個事件處理程序,例如onResume()。我建議你看看這個鏈接:https://developer.android.com/guide/components/activities/activity-lifecycle.html – Defrag
如果您有多個活動,您可以在AndroidManifest.xml
設置像這樣<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".NumbersActivity"
android:label="@string/category_numbers"
android:theme="@style/category_numbers" />
<activity
android:name=".FamilyActivity"
android:label="@string/category_family"
android:theme="@style/category_family" />
<activity
android:name=".ColorsActivity"
android:label="@string/category_colors"
android:theme="@style/category_colors" />
<activity
android:name=".PhrasesActivity"
android:label="@string/category_phrases"
android:theme="@style/category_phrases" />
<activity
android:name=".ExperimentActivity"
android:label="@string/category_experiment"
android:theme="@style/category_experiment" />
</application>
我有我的活動工具欄,並且覆蓋所有的標題一個基本活動。所以我不得不使用中的setTitle的onResume()在活動像這樣:
@Override
protected void onResume() {
super.onResume();
toolbar.setTitle(R.string.title);
}
如果你想,當你通過點擊按鈕來改變活動更改活動名稱。聲明必需的變量在MainActivity:
private static final String TITLE_SIGN = "title_sign";
ImageButton mAriesButton;
添加onClickListener中的onCreate(),並作出新的意向爲另一個活動:
mTitleButton = (ImageButton) findViewById(R.id.title_button);
mTitleButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this,
SignActivity.class);
String title_act = getText(R.string.simple_text).toString();
intent.putExtra("title_act", title_act);
startActivity(intent);
finish();
}
});
SecondActivity代碼的onCreate():
String txtTitle = getIntent().getStringExtra("title_act");
this.setTitle(txtTitle);
我使用Android Studio 3.0.1。
與活動:
setTitle("Title Text");
裏面一個片段:
getActivity().setTitle("Title Text");
的setTitle不是爲我工作,getSupportActionBar()和getActionBar()也空值我不能設置在運行時的標題。 –
@Ninja_Coding,嘗試從Activity中調用它。 –