පවතින අභිරුචි තේමාව සමඟ XML හි ක්‍රියාකාරකමක් සඳහා මාතෘකා තීරුව සඟවන්නේ කෙසේද


887

මගේ සමහර ක්‍රියාකාරකම් සඳහා මාතෘකාව සඟවා තැබීමට මට අවශ්‍යය. ගැටලුව වන්නේ මගේ සියලු ක්‍රියාකාරකම් සඳහා මම ශෛලියක් යෙදීමයි, එබැවින් මට තේමාව සරලව සැකසිය නොහැක @android:style/Theme.NoTitleBar.

මගේ ශෛලිය සඳහා දෙමාපියෙකු ලෙස NoTitleBar තේමාව භාවිතා කිරීම මගේ සියලු ක්‍රියාකාරකම් වලින් මාතෘකා තීරුව ඉවත් කරයි.

මට ශීර්ෂ පා style අයිතමයක් කොතැනක හෝ සැකසිය හැකිද?

Answers:


1071

ඔබේ onCreate()ක්‍රමයේදී මෙය කරන්න .

//Remove title bar
this.requestWindowFeature(Window.FEATURE_NO_TITLE);

//Remove notification bar
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

//set content view AFTER ABOVE sequence (to avoid crash)
this.setContentView(R.layout.your_layout_name_here); 

thisයන්නෙන් අදහස් කෙරේ Activity.


7
නියම පිළිතුර. ඔබ ඒ දෙකම කළ යුතු නැත, දැනුම්දීම් තීරුව ඉවත් කිරීම අධික ලෙස මරණයට පත් විය හැකිය.
ජිම් බ්ලැක්ලර්

210
SetContentView (R.id.x) වෙත ඇමතුමට පෙර එය තැබීමට වග බලා ගන්න, එසේ නොවුවහොත් එය බිඳ වැටෙනු ඇත. හේතුව මට වහාම පැහැදිලි නොවීය. 08-13 12: 47: 33.561 E / AndroidRuntime (9125): java.lang.RuntimeException: ක්‍රියාකාරකම් ආරම්භ කළ නොහැක ComponentInfo {com.myapp / com.myapp.SplashActivity and: android.util.AndroidRuntimeException: requestFeature () අන්තර්ගතය එක් කිරීමට පෙර
mobibob

9
RequestWindowFeature () භාවිතා කරන විට, ඔබ කිසියම් අන්තර්ගතයක් එකතු කිරීමෙන් පසු මෙම රේඛාව ක්‍රියාත්මක කළහොත් බල-වසා දැමීමක් සිදුවන බව ඔබ සැබවින්ම සඳහන් කළ යුතුය . පැත්තක සටහනක, XML ක්‍රමය වඩා ආරක්ෂිත වන අතර එය ඔබේ කේතයෙන් පිටු ව්‍යුහය ද වෙන් කරයි, (මෙය XML වල සම්පූර්ණ අරමුණයි.)
b1nary.atr0phy

22
මෙය API 22 භාවිතයෙන් ක්‍රියා නොකරයි. මම තවමත් මාතෘකාව ආරම්භ කරන්නේ යෙදුම ආරම්භ වන විට ය.
user2966445

8
ඔබගේ ක්‍රියාකාරකම ක්‍රියාකාරකම් දීර් App කරන්නේ නම් එය ක්‍රියාත්මක නොවේ AppCompatActivity එනම් ඔබේ පන්තිය පොදු පංතියක් ලෙස ප්‍රකාශයට පත් කළ යුතුය myActi ක්‍රියාකාරකම් පුළුල් කරයි} Man
මන්ප්‍රීත් සිං ඩිලන්

531

ඔබට මෙය වෙනස් කළ හැකිය AndroidManifest.xml:

<activity android:name=".MainActivity"
          android:label="@string/app_name"
          android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen">

හෝ android:theme="@android:style/Theme.Black.NoTitleBar"ඔබට පූර්ණ තිර ක්‍රියාකාරකමක් අවශ්‍ය නොවේ නම් භාවිතා කරන්න.

සටහන: ඔබ පෙර 'පෙරනිමි' දැක්ම භාවිතා කළා නම්,, ඔබට මීට ද මව් පන්තියේ වෙනස් කළ යුතු ය AppCompatActivityකිරීමට Activity.


1
මම දන්නේ නැහැ ඇයි කියලා. මම සුපුරුදු ව්‍යාපෘතිය පමණක් භාවිතා කර ක්‍රියාකාරකමක් එක් කළෙමි. ස්වයං සම්පුර්ණ කිරීම මගේ වැඩ නොවේ, නමුත් තේමාව එහි ඇත.
රෙඩැක්ස්

83
android:theme="@android:style/Theme.Black.NoTitleBar"ඔබ ක්‍රීඩාවක් නොකරන්නේ නම් එය වඩාත් ප්‍රයෝජනවත් වේ
ක්‍රිස් එස්

7
හෝ <style name = "AppTheme" parent = "android: Theme.Light.NoTitleBar" /> සැහැල්ලු තේමාවට.
ප්‍රනාන්දු ජේඑස්

21
එයට හේතුව මම නොදනිමි, නමුත් මෙය මගේ යෙදුම බිඳ වැටේ. උදව්වක් තිබේද?
අකේෂ්වර් ha ා

12
Kes අකේෂ්වර්: ඔබට ඔබේ style.xml ගොනුව අවුල් කිරීමට සිදුවනු ඇත. උදාහරණයක් ලෙස, <style name = "AppTheme" parent = "Theme.AppCompat.Light.DarkActionBar"> <style name = "AppTheme" parent = "Theme.AppCompat.Light.NoActionBar"> ලෙස වෙනස් කරන්න. ඔබ එය කරන්නේ නම්, ඔබගේ AndroidManifest.xml ගොනුව වෙනස් කිරීමට ඔබට අවශ්‍ය නැත. (මම මෙම අනතුර, ද, මම මේ අපූරු කළේ තෙක් ලබා ඇත.)
බ්රිට් Clousing

389

මම දැන් පහත සඳහන් දේ කළා.

මගේ සාමාන්‍ය ශෛලියෙන් සෑම දෙයක්ම උරුම කර ගන්නා ශෛලියක් ප්‍රකාශයට පත් කර පසුව බාර් අක්‍රීය කරමි.

<style name="generalnotitle" parent="general">
    <item name="android:windowNoTitle">true</item>
</style>

දැන් මට මෙම ශෛලිය සෑම ක්‍රියාකාරකමකටම සකසා ගත හැකි අතර, මාතෘකාව පුළුල් කිරීම සඳහා පුළුල් පරාසයක් නැවත ලිවීම සහ අනෙකුත් සියලුම ශෛලීය තොරතුරු උරුම කර ගැනීම සඳහා අවශ්‍ය වන අතර එමඟින් ශෛලියේ කේතයේ අනුපිටපත් නොමැත.

විශේෂිත ක්‍රියාකාරකමකට ශෛලිය යෙදීම AndroidManifest.xmlසඳහා, activityටැගය වෙත පහත ගුණාංගය විවෘත කර එක් කරන්න ;

<activity
    android:theme="@style/generalnotitle">

13
මම විශ්වාස කරන්නේ ඔහු "ජෙනරල්" නමින් ශෛලියක් නිර්මාණය කළ අතර ඔහු එය දිගු කරන බවයි. ඔබේම ප්‍රයෝජනය සඳහා එය ඉවත් කරන්න.
rcl

7
මෙම ප්‍රශ්නයේ අනෙක් බොහෝ පිළිතුරු මෙන් සමාන ප්‍රති results ල ලබා ගැනීම සඳහා වඩාත්ම පැහැදිලි ක්‍රමය සඳහන් කරනවාට වඩා ප්‍රශ්නයට පිළිතුරු සැපයීම සඳහා +1. නිවැරදි පිළිතුරක් ලබා ගැනීම සඳහා ඔබේම ප්‍රශ්නයට පිළිතුරු දීමට සිදුවීම ලැජ්ජාවකි ...
ජූල්ස්

1
මෙම පිළිතුර හොඳම ය. ඔබට ඇන්ඩ්‍රොයිඩ් විසින් සපයන වෙනත් තේමාවක් මාතෘකා තීරුවක් නොමැතිව භාවිතා කළ හැකිය. බෙදාහදා ගැනීම ගැන බොහෝම ස්තූතියි
නරේන්ද්‍ර පල්

4
මෙය ක්‍රමලේඛයට වඩා අලංකාර විසඳුමක් බව මම විශ්වාස කරමි. RequestWindowFeature (Window.FEATURE_NO_TITLE); මක්නිසාද යත්, මේ අවස්ථාවේ දී සමහර "
දිලිසෙන

1
OP ප්‍රශ්නයට හොඳම පිළිතුර :) නමුත් තවමත් එය මගේ ක්‍රියාකාරකම් වල මාතෘකාව තීරුව ඉවත් නොකරයි (API19)
1111161171159459134

166

this.requestWindowFeature(Window.FEATURE_NO_TITLE);මාතෘකා තීරුව කෙටියෙන් දර්ශනය වී පසුව අතුරුදහන් වන නිසා මම එයට කැමති නැත .

android:theme="@android:style/Theme.NoTitleBar"නව උපාංගවල භාවිතා කරන්නන් පුරුදු වී ඇති 3.0+ හෝලෝ වෙනස්කම් සියල්ලම මට අහිමි වූ නිසා මමත් කැමති නැත . ඒ නිසා මම මෙම විසඳුම හමු විය.

ඔබගේ res / values ෆෝල්ඩරයේ style.xml නමින් ගොනුවක් සාදන්න (එය දැනටමත් නොපවතී නම්). එම ගොනුවේ පහත කේතය තබන්න:

<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <style name="Theme.Default" parent="@android:style/Theme"></style>
    <style name="Theme.NoTitle" parent="@android:style/Theme.NoTitleBar"></style>
    <style name="Theme.FullScreen" parent="@android:style/Theme.NoTitleBar.Fullscreen"></style>
</resources>

ඊළඟට වෙනත් style.xml ගොනුවක් සමඟ res / values-v11 සාදන්න (නැවත වරක් මෙය දැනටමත් පැවතිය හැකිය). එම ගොනුවේ පහත කේතය තබන්න:

<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <style name="Theme.Default" parent="@android:style/Theme.Holo"></style>
    <style name="Theme.NoTitle" parent="@android:style/Theme.Holo.NoActionBar"></style>
    <style name="Theme.FullScreen" parent="@android:style/Theme.Holo.NoActionBar.Fullscreen"></style>
</resources>

ඔබ 4.0+ ඉලක්ක කරන්නේ නම්, තවත් style.xml ගොනුවක් සමඟ res / values-v14 ෆෝල්ඩරයක් සාදන්න (ඔව් එය දැනටමත් එහි තිබිය හැක). එම ගොනුවේ පහත කේතය තබන්න:

<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <style name="Theme.Default" parent="@android:style/Theme.Holo.Light"></style>
    <style name="Theme.NoTitle" parent="@android:style/Theme.Holo.Light.NoActionBar"></style>
    <style name="Theme.FullScreen" parent="@android:style/Theme.Holo.Light.NoActionBar.Fullscreen"></style>
</resources>

අවසාන වශයෙන්, මෙම ලිපිගොනු සියල්ලම නිර්මාණය කර ඇති විට, ඔබට කේතය එක් කළ හැකි AndroidManifiest.xml ගොනුව විවෘත කරන්න :

android:theme="@style/Theme.NoTitle"

සමස්ත යෙදුමටම අදාළ වීමට අවශ්‍ය නම් ඔබට මාතෘකාවක් අවශ්‍ය නොවන ක්‍රියාකාරකම් ටැගය හෝ යෙදුම් ටැගය වෙත.

දැන් ඔබේ පරිශීලකයින්ට ඔබ කැමති තිර සැකැස්ම සමඟ ඔවුන්ගේ උපාංග අනුවාදය හා සම්බන්ධ තේමාවන් ලැබෙනු ඇත.

PS අගය වෙනස් කිරීම android:theme="@style/Theme.FullScreen"එකම බලපෑමක් ඇති කරයි, නමුත් දැනුම්දීම් තීරුව ඉවත් කරන්න.


ඔවුන්..ඔබ පැවසූ දෙයට මෙය හොඳින් ක්‍රියා කරයි, නමුත් තේමාවන් වෙනස් කිරීමේදී රූප වෙව්ලන්නට විය. ඉතින් මොකද කරන්න ???
අරුන්

1
unarun - මෙම ක්‍රමය භාවිතා කරමින් මට කිසිදු රූප ගැටලුවක් නොමැත. බියෙන් තැති ගැනීමෙන් ඔබ අදහස් කරන්නේ කුමක්ද?
ඩෙවින් ස්ටුවර්ට්

1
හොඳම පිළිතුර .. this.requestWindowFeature (කවුළුව. FEATURE_NO_TITLE); සුදුසු නොවන අතර <අයිතමය නම = "android: windowNoTitle"> සත්‍ය </ it> මුල් තේමාව නැති වී ඇත .. ස්තූතියි @ ඩෙවින්ස්ටෙවර්ට් .. ඔබේ පැහැදිලි කිරීම සඳහා +1 පිළිගන්න :)
lynndragon

5
මට මෝඩයි! මම භාවිතා කළේ ActionBarActivity, ඔබට ක්‍රියාව ඉවත් කිරීමට අවශ්‍ය නම් එයින් තේරුමක් නැත! සරල ක්‍රියාකාරකමකට හෝ ෆ්‍රැග්මන්ට් ඇක්ටිවිටියට වෙනස් කිරීම මෙම කදිම විසඳුම චමත්කාරයක් මෙන් වැඩ කිරීමට ඉඩ දෙයි.
SMBiggs

1
"අවාසනාවට YourApp නතර වී ඇත."
ක්‍රිස් ඇලින්සන්

104

සංවර්ධක ඇන්ඩ්‍රොයිඩ් පිටුවේ සඳහන් පරිදි මාතෘකා තීරුව ආකාර දෙකකින් ඉවත් කළ හැකිය:

තුළ manifest.xmlගොනු:

  1. applicationයෙදුමක ඇති සියලුම ක්‍රියාකාරකම් සඳහා එය ඉවත් කිරීමට ඔබට අවශ්‍ය නම් පහත සඳහන් දෑ එක් කරන්න :

    <application android:theme="@android:style/Theme.Black.NoTitleBar">
  2. හෝ විශේෂිත ක්‍රියාකාරකමක් සඳහා:

    <activity android:theme="@android:style/Theme.Black.NoTitleBar">

15
Black.theme වෙනුවට android: theme = "@ android: style / Theme.DeviceDefault.NoActionBar.Fullscreen" භාවිතා කිරීම වඩා හොඳය. තේමාව හැසිරවීමට උපාංගයට ඉඩ දෙන්න. නමුත් ස්තූතියි, මම ඔබේ ප්‍රවේශය භාවිතා කළෙමි
වරන්ඩ් පෙෂ්ෂ්කියන්

56

නිවැරදි පිළිතුර බොහෝ විට ActionbarActivity දිගු නොකිරීම වෙනුවට ක්‍රියාකාරකම් දිගු කිරීම නොවේ


ඔබ තවමත් ක්‍රියාකාරී තීරු ක්‍රියාකාරකම් භාවිතා කරන්නේ නම් මෙය ක්‍රියාත්මක වන බව පෙනේ:

@Override
protected void onCreate(Bundle savedInstanceState) {          
    super.onCreate(savedInstanceState);
    getSupportActionBar().hide(); //<< this
    setContentView(R.layout.activity_main);
}

මෙයද ක්‍රියාත්මක වන බව පෙනේ:

styles.xml:

   <style name="AppBaseTheme" parent="Theme.AppCompat.Light" >
          <item name="android:windowNoTitle">true</item>   <!-- //this -->     
   </style>

ස්කොට් බිග්ස් ලියූ පරිදි මට එය කළ හැකිය. මේ වගේ වැඩ. හැර තේමාවක් නැත. මම අදහස් කළේ සැකසුම් මෙනුවේ පසුබිම විනිවිද පෙනෙන බවයි:

වෙනස් කරන්න

public class MainActivity extends ActionBarActivity {

ක්‍රියාකාරකම් හෝ කොටස් කොටස් ක්‍රියාකාරකම් වෙත

public class MainActivity extends Activity  {

කෙසේ වෙතත් මට ද්‍රව්‍යමය සැලසුම භාවිතයෙන් එය හොඳ පෙනුමක් ලබා දිය හැකි අතර ක්‍රියාකාරී තීරුව ඉවත් නොකරන්න: https://gist.github.com/shimondoodkin/86e56b3351b704a05e53

  1. යෙදුමේ නිරූපකය සකසන්න
  2. සැලසුමට ගැලපෙන පරිදි ක්‍රියා තීරුවේ වර්ණ සකසන්න.
  3. සැකසුම් මෙනුවට නිරූපකය සකසන්න
  4. තවත් අයිකන එක් කරන්න (ඉහළ බොත්තම්)

එය ද්‍රව්‍යමය සැලසුම් අනුකූලතා ක්‍රියාකාරී තීරු මෝස්තරයට උදාහරණයකි.


4
ActionBarActivity ක්‍රියාකාරකම් වලට වෙනස් කිරීම මට උපක්‍රමයක් විය!
DritanX

47

මට වැඩ කරන්නේ කුමක්ද:

1- in style.xml:

 <style name="generalnotitle" parent="Theme.AppCompat.Light" >
          <item name="android:windowNoTitle">true</item>   <!-- //this -->     
   </style>

2- ප්‍රධාන ක්‍රියාකාරිත්වයේ

@Override
protected void onCreate(Bundle savedInstanceState) {          
    super.onCreate(savedInstanceState);
    getSupportActionBar().hide(); //<< this
    setContentView(R.layout.activity_main);
}
  1. පැහැදිලිවම ශෛලිය උරුම කර ගනී:

    <activity android:name=".MainActivity" android:theme="@style/generalnotitle">

ඉහත විස්තර කර ඇති පරිදි, සමහර විට එය xml වෙතින් ක්‍රියා නොකරයි. හරියටම ඇයිදැයි මම නොදනිමි, මට සම්පූර්ණයෙන්ම විශ්වාස නැත, නමුත් getSupportActionBar().hide();onCreate () within the තුළ එම කාර්යය කරනු ඇත
ZeePee


43

ඔබ භාවිතා කරන්නේ නම්, this.requestWindowFeature(Window.FEATURE_NO_TITLE)ක්‍රියාකාරකම් ආරම්භ වන විට දියත් කිරීමේ සජීවිකරණයේ මොහොතකට පරිශීලකයාට මාතෘකාව තීරුව දැකගත හැකිය onCreate. @android:style/Theme.Black.NoTitleBarපහත දැක්වෙන පරිදි ඔබ භාවිතා කරන්නේ නම් දියත් කිරීමේ සජීවිකරණයේදී මාතෘකා තීරුව නොපෙන්වයි.

<activity 
    android:name=".MainActivity" 
    android:label="My App"
    android:theme="@android:style/Theme.Black.NoTitleBar"
    android:screenOrientation="portrait">

ඉහත උදාහරණයෙන් පැහැදිලිවම ඔබගේ පවතින යෙදුම් තේමාව අභිබවා යනු ඇත, ඔබට දැනට පවතින තේමාවක් තිබේ නම් එයට එකතු කරන්න <item name="android:windowNoTitle">true</item>.


මගේ ක්‍රියාකාරකම @android: style / Theme.Black.NoTitleBar සමඟ තනි අවස්ථාවකි, නමුත් මෙම කේතය භාවිතා කිරීම මඟින් ඔබ පළමු වරට ක්‍රියාකාරකම නිර්මාණය කළ විට තනි ඉන්ස්ටෙන්ස් ක්‍රියාකාරකම පසුව නැවත නිර්මාණය නොකෙරේ, එබැවින් එය OnNewItent ක්‍රමය භාවිතා කරයි, නමුත් දැන් මගේ ගැටලුව වන්නේ ක්‍රියාකාරකම් පෙන්වන විට ය. එය තත්පර 4 ක් සඳහා තත්ව තීරුව පෙන්වන්න .මම එයින් මිදිය හැක්කේ කෙසේද? මෙන්න මගේ ප්‍රශ්නය සබැඳිය stackoverflow.com/questions/9308767/…
හෙරී

30

මම ඉහළට ඔසවා තැබූ පිළිතුරු භාවිතා කිරීමට උත්සාහ කළ විට මගේ යෙදුම නිතරම බිඳ වැටුණි. (මම හිතන්නේ එයට "andandroid: style" හා සම්බන්ධයක් තිබේද?)

මට හොඳම විසඳුම වූයේ පහත සඳහන් දෑ භාවිතා කිරීමයි:

android:theme="@style/Theme.AppCompat.NoActionBar"

තවදුරටත් ශීර්ෂක / මාතෘකා තීරුවක් නොමැත. එය සම්පූර්ණ යෙදුම තුළ හෝ විශේෂිත ක්‍රියාකාරකමක් තුළ ඔබට (අවශ්‍ය නැතිනම්) අවශ්‍ය නම් <application>...</application>හෝ එය <activity>...</activity>මත තබන්න.


යෙදුම "AppCompatActivity දිගු කරයි" නම් මෙය හොඳම ක්‍රමයයි (හෝ එකම ක්‍රමයද?)!
ෆෙරරෙසි

17

පහත පරිදි තේමාවක් සාදන්න.

 <!-- Variation on the Light theme that turns off the title -->
<style name="MyTheme" parent="android:style/Theme.Black">
    <item name="android:windowNoTitle">true</item>
</style>

16

එකතු කරන්න

<item name="android:windowNoTitle">true</item>

AppTheme ඇතුලත (style.xml)



15

මක්නිසාද යත් AppCompat, පහත දැක්වෙන විසඳුම මා වෙනුවෙන් වැඩ කළ බැවිනි:

ඔබගේ styles.xmlසහ කට්ටලයේ ක්‍රියාකාරී තීරුවක් නොමැතිව නව තේමා විලාසය එක් කරන්න parent="Theme.AppCompat.NoActionBar".

<style name="SplashTheme" parent="Theme.AppCompat.NoActionBar">

    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimary</item>
    <item name="colorAccent">@color/colorAccent</item>
    <item name="android:windowBackground">@color/colorPrimary</item>

</style>


දැන් ඔබගේ ස්ප්ලෑෂ් තිර ක්‍රියාකාරිත්වයට එකම තේමා විලාසය ක්‍රියාත්මක කරන්න androidManifest.xml

<activity
        android:name=".ActivityName"
        android:theme="@style/SplashTheme"> // apply splash them here 

        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
</activity>

ප්‍රති result ලය මෙන්න:

රූප විස්තරය මෙහි ඇතුළත් කරන්න


14

ඔබ AppThemeඅර්ථ දැක්වීම ප්‍රතිස්ථාපනය කරන්නේ නම් ඔබට Style.xml හි විලාසය වෙනස් කළ යුතුයDarkActionBar

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

වෙත NoActionBar

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">

AndroidManifast.xml හි අර්ථ දක්වා ඇති AppTheme


11

ඔබේ ජාවා ගොනුවේ මෙම කේතය භාවිතා කළ හැකිය

ඔබගේ දර්ශනය සැකසීමට හෝ පූරණය කිරීමට පෙර මෙම රේඛාව එක් කරන්න

requestWindowFeature(Window.FEATURE_NO_TITLE); 
setContentView(R.layout.activity_main);

11

ඔබේ onCreateක්‍රමයේදී, පහත දැක්වෙන ස්නිපටය භාවිතා කරන්න:

this.requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_main);

යෙදුම මාතෘකාවෙන් ආරම්භ වන අතර එය සැඟවී ඇත, එය කිසිදු මාතෘකාවක් නොමැති යෙදුම පෙන්වයි
Bachask8

10

ඔබ භාවිතා කරන තේමාව සඳහා ඒ දෙකම එකතු කරන්න:

    <item name="windowActionBar">false</item>
    <item name="android:windowNoTitle">true</item>

"අවාසනාවට YourApp නතර වී ඇත."
ක්‍රිස් ඇලින්සන්

<item name="windowActionBar">false</item>යෙදුම බිඳ වැටීමට හේතු වේ. h ක්‍රිස් ඇලින්සන් අදහස් කළේ මෙය විය හැකිය
මුබෂාර්

තහවුරු කළ නොහැක. මට හොඳින් වැඩ කරයි.
ඇන්ඩ්‍රොයිඩ් සංවර්ධක

10

මෙම ශෛලිය ඔබගේ style.xml ගොනුවට එක් කරන්න

 <style name="AppTheme.NoActionBar">
     <item name="windowActionBar">false</item>
     <item name="windowNoTitle">true</item>
 </style>

එම සඳහනෙන් පසුව, පහත දැක්වෙන පරිදි, මාතෘකා තීරුව දැකීමට ඔබට අවශ්‍ය නොවන, පර්යන්ත ක්‍රියාකාරකම් වලදී මෙම ශෛලියේ නම ඔබේ androidManifest.xml වෙත ඇතුළත් කරන්න.

<activity android:name=".youractivityname"
     android:theme="@style/AppTheme.NoActionBar">
</activity>

android:ඔබගේ පළමු කේත කොටසේ නම් වලට පෙර උපසර්ගය ඔබට අමතක විය :)
Stam Kaly

8

මම ආධාරක විජට් මෙවලම් තීරුව v7 භාවිතා කරමි. එබැවින්, මාතෘකාව මකා දැමීමට හෝ සැඟවීමට හැකිවීම සඳහා අප මෙය ලිවිය යුතුය.

Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar);
setSupportActionBar(myToolbar);

//Remove¡ing title bar
getSupportActionBar().setDisplayShowTitleEnabled(false);

පරිපූර්ණ පිළිතුර.
අෂේෂා ජෝර්ජ්

7

හෝ ඔබට ඕනෑම අවස්ථාවක මාතෘකා තීරුව සැඟවීමට / පෙන්වීමට අවශ්‍ය නම්:

private void toggleFullscreen(boolean fullscreen)
{
    WindowManager.LayoutParams attrs = getWindow().getAttributes();
    if (fullscreen)
    {
        attrs.flags |= WindowManager.LayoutParams.FLAG_FULLSCREEN;
    }
    else
    {
        attrs.flags &= ~WindowManager.LayoutParams.FLAG_FULLSCREEN;
    }
    getWindow().setAttributes(attrs);
}

6

මගේ නඩුවේදී, ඔබ ඇන්ඩ්‍රොයිඩ් ස්ටුඩියෝ 2.1 භාවිතා කරන්නේ නම් සහ ඔබේ සංයුක්ත SDK අනුවාදය 6.0 නම්, ඔබේ මැනිෆෙස්ට්. Xml ගොනුව වෙත ගොස් පහත කේතය වෙනස් කරන්න:

මෙන්න කේතය:

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

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/Theme.AppCompat.NoActionBar">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

මෙන්න ස්නයිප් රූගත කිරීම් (උද්දීපනය කළ කේතය බලන්න): රූප විස්තරය මෙහි ඇතුළත් කරන්න


SO වෙත සාදරයෙන් පිළිගනිමු. ඔබේ කේතයේ අනුරුවක් පළ කරනවාට වඩා කරුණාකර ඔබේ කේතය කෙලින්ම SO වෙත පළ කරන්න.
රිචඩ් එරික්සන්

6

මෙය මගේ ගැටලුව විසඳීය

මගේ ක්‍රියාකාරකම් පැහැදිලිව:

<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".SplashScreen">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

"AppTheme" නම යටතේ ශෛලියෙන්:

<resources>

    <!-- Base application theme. -->
    <style name="AppTheme"
        parent="Theme.AppCompat.Light.NoActionBar">
        **<item name="windowActionBar">false</item>
        <item name="android:windowNoTitle">true</item>**
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

</resources>

6

මාතෘකාව සහ ක්‍රියා තීරුව යන දෙකම සැඟවීමට මම මෙය කළෙමි:

ප්‍රතිපත්ති ප්‍රකාශනයේ ක්‍රියාකාරකම් ටැගය තුළ:

android:theme="@style/AppTheme.NoActionBar"

SetContentView ට පෙර Activity.java හි:

this.requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

එනම්,

// මාතෘකා තීරුව ඉවත් කරන්න

this.requestWindowFeature (කවුළුව. FEATURE_NO_TITLE);

// දැනුම්දීම් තීරුව ඉවත් කරන්න

this.getWindow (). setFlags (WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

සටහන : ඔබ මීට පෙර මෙම රේඛා තබා ගත යුතුයsetContentView


මම ජාවා හි එතරම් අත්දැකීම් නොමැති හෝ ඇන්ඩ්‍රොයිඩ් යෙදුම් නිර්මාණය කර නැත, එබැවින් එම කේත රේඛා setContentView ට පෙර පිහිටා තිබිය යුතුය යන ඔබේ අදහස ඇත්තෙන්ම උපකාරවත් විය! ස්තූතියි!
කයිල් වෑන් ටිල්

5

පළමු පිළිතුර ඇම්ෆිබෝල් ය. මෙන්න මගේ පැහැදිලි කිරීම: එකතු කරන්න:

this.requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);

oncreate () ක්‍රමයේදී.

කලින්:

super.onCreate(savedInstanceState);
setContentView(R.layout.activity_start);

(setContentView ට පෙර පමණක් නොවේ) මෙය නොකරන්නේ නම් ඔබට බලහත්කාරය ලැබෙනු ඇත. +1 මෙම පිළිතුර.


4

මෙම දෝෂය ඇතිවීමට හේතු දෙකක් මට හමු විය.

එක. කවුළු ධජ දැනටමත් සකසා ඇති super.onCreate(savedInstanceState);අතර පහත දැක්වෙන විධානයන් භාවිතා කිරීමට ඔබට අවශ්‍ය විය හැකිය:

this.requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);      

super.onCreate(savedInstanceState);

දෙක. ඔබට මාතෘකාව තීරුව තුළ උපස්ථ / ඉහළ බොත්තම ඇත, එයින් අදහස් වන්නේ වර්තමාන ක්‍රියාකාරකම වෙනත් ක්‍රියාකාරකමක ධූරාවලි දරුවෙකු වන අතර, එම අවස්ථාවේ දී ඔබට අදහස් දැක්වීමට හෝ onCreateක්‍රමයේ ඇතුළත සිට මෙම කේත රේඛාව ඉවත් කිරීමට අවශ්‍ය විය හැකිය .

getActionBar().setDisplayHomeAsUpEnabled(true);

ස්තූතියි, තේමාව වෙනස් කිරීමකින් තොරව NoTitle සහ FullScreen සැකසීමට එය මට උදව් විය
Mohsen Afshin

4

සම්පූර්ණ කේතය පෙනෙන්නේ මෙයයි. Android.view.Window ආනයනය කිරීම සැලකිල්ලට ගන්න.

package com.hoshan.tarik.test;

import android.app.Activity;
import android.os.Bundle;
import android.view.Window;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_main);
    }
}

4

AndroidManifest.xml හි ඔබගේ ක්‍රියාකාරකම් වලදී තේමාව @ style / Theme.AppCompat.Light.NoActionBar එක් කරන්න

<activity
        android:name=".activities.MainActivity"
        android:theme="@style/Theme.AppCompat.Light.NoActionBar">
    </activity>

3

යාව් සහ ඩග් පෝල් භාවිතා කරන්නන් ඔබ කරන්නේ නම්, ඔබ මතක තබා ගත යුත්තේ setContentView ඇමතීමට පෙර කවුළු විශේෂාංග සකස් කළ යුතු බවයි. එසේ නොවේ නම්, ඔබට ව්‍යතිරේකයක් ලැබෙනු ඇත.


3

පැහැදිලි ගොනුවක් එක් කරන්න,

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

ur ර් ජාවා ගොනුවට පහත පේළිය එක් කරන්න,

  this.requestWindowFeature(Window.FEATURE_NO_TITLE);

3

මම ඇන්ඩ්‍රොයිඩ් Xamarin භාවිතා කරන අතර මෙය මට වැඩ කළේය.

SupportActionBar.Hide();
SetContentView(Resource.Layout.activity_main);
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.