2015-03-29 2 views
1

Я создал файл макета xml. И когда я даю это как содержание моей деятельности, БЛОК НАЗВАНИЯ НЕ ВИДИМО. Как я могу сделать это видимым. Я попытался использовать setTitle («Title»);Строка заголовка планшета Android не отображается

protected void onCreate(Bundle savedInstanceState) { 
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN); 
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 
super.onCreate(savedInstanceState); 
Bundle b = getIntent().getExtras(); 
int layoutId = b.getInt("layout"); 
Log.d("====>>>", " " + layoutId); 
setContentView(layoutId); 
setTitle("Title"); 
} 

функция in onCreate() способ. Я не работаю. Это мой xml-файл.

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/ScrollView01" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" > 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" 
    android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    tools:context="com.universityapp.enrollee.FacultyInformationActivity" 
    android:scrollbars="vertical" 
    > 

    <TextView 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:text="@string/text_faculty_information_agro" 
     android:textSize="15dp" 
     android:textAlignment="center" 
    /> 
</RelativeLayout> 
</ScrollView> 

Я начинаю деятельность через ListView:

profListView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 

      switch (position){ 
       case 0: 
        facultyInfoIntent = new Intent(getBaseContext(), FacultyInformationActivity.class); 
        Bundle b = new Bundle(); 
        b.putInt("layout", facultyLayoutNames[position]); 
        facultyInfoIntent.putExtras(b); 
        startActivity(facultyInfoIntent); 
      } 

      Log.d("Selected faculty", facultiNames[position]); 
     } 
    }); 

Это мой Manifest:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.universityapp.universityapp" > 

    <uses-permission android:name="android.permission.CALL_PHONE" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
    <uses-permission android:name="android.permission.CALL_PHONE" /> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" /> 

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
     <activity android:name="com.universityapp.common.MainActivity" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name="com.universityapp.common.MenuActivity" 
      android:label="Главное меню" > 
     </activity> 
     <activity 
      android:name="com.universityapp.enrollee.ContacsActivity" 
      android:label="Наши контакты" > 
     </activity> 
     <activity 
      android:name="com.universityapp.enrollee.Map" 
      android:label="@string/title_activity_map" > 
     </activity> 

     <meta-data 
      android:name="com.google.android.gms.version" 
      android:value="@integer/google_play_services_version" /> 
     <meta-data 
      android:name="com.google.android.maps.v2.API_KEY" 
      android:value="@string/google_maps_key" /> 

     <activity 
      android:name="com.universityapp.enrollee.MapsActivity" 
      android:label="@string/title_activity_maps" > 
     </activity> 
     <activity 
      android:name="com.universityapp.bachelor.PlatonusActivity" 
      android:label="@string/title_activity_platonus" > 
     </activity> 
     <activity 
      android:name="com.universityapp.database.DatabaseActivity" 
      android:label="@string/title_activity_database" > 
     </activity> 
     <activity 
      android:name="com.universityapp.enrollee.EnrUniversityInfo" 
      android:label="@string/title_activity_enr_university_info" > 
     </activity> 
     <activity 
      android:name="com.universityapp.enrollee.ProfessionsActivity" 
      android:label="@string/title_activity_professions" > 
     </activity> 
     <activity 
      android:name="com.universityapp.enrollee.FacultyInformationActivity" 
      android:label="@string/title_activity_faculty_information" > 
     </activity> 
    </application> 

</manifest> 
+0

Вы не видите строку заголовка или заголовок в строке заголовка? –

+1

Я не могу видеть строку заголовка – Makko

+0

опубликовать свой manifest.xml –

ответ

8

Я нашел ответ! Я изменил Activity на ActionBarActivity, и он работает!

+0

AppCompatActivity также работает для меня (если применимо). – Kajal

1

Чтобы показать строку заголовка, вы можете использовать это в вашем onCreate:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN); 
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 
+1

Не работает:. Защищен недействительным OnCreate (Bundle savedInstanceState) { GetWindow() addFlags (WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN); getWindow(). ClearFlags (WindowManager.LayoutParams.FLAG_FULLSCREEN); super.onCreate (savedInstanceState); Bundle b = getIntent(). GetExtras(); int layoutId = b.getInt ("layout"); Log.d ("==== >>>", "" + layoutId); setContentView (layoutId); setTitle ("Title"); } – Makko

+0

@Makko да в этом месте, попробуйте и скажите мне результаты –

+1

Это еще не работает – Makko

1

Вы можете сделать это делает это (как suggested by HafizWaleedHussain):

public void showTitle() { 
      try { 
        ((View) findViewById(android.R.id.title).getParent()) 
            .setVisibility(View.VISIBLE); 
      } catch (Exception e) { 
      } 
      getWindow().addFlags(
          WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN); 
      getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 
    } 

Если это не работает, то откройте файл манифеста Android и удалите эту строку, если она существует:

android:theme="@android:style/Theme.NoTitleBar" 
7

Изменение:

public class MainActivity extends Activity{ 

} 

в файле класса для:

public class MainActivity extends AppCompatActivity{ 

} 
0
I removed the statement android:theme="@style/AppTheme" in the application tag and the bar started appearing 

    <application 
     android:allowBackup="true" 
     android:icon="@mipmap/ic_launcher" 
     android:label="@string/app_name" 
     android:supportsRtl="true" 
     **android:theme="@style/AppTheme"**> 
0

Got о styles.xml и сделать новый стиль

<style name="CustomWindowTitleBackground"> 
     <item name="android:background">#323331</item> 
     <item name="android:windowNoTitle">false</item> 
    </style> 

и вызывать его из Манифест (вы также можете добавить другие функции внутри элемента теги)

<activity 
      android:name=".st.activity.MyGoogleMap" 
      android:theme="@style/CustomWindowTitleBackground"> 
      <intent-filter> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity>