2013-06-13 8 views
6

मैं प्रकट में निम्न पंक्ति का उपयोग करके एक गतिविधि के लिए शर्लक कार्रवाई बार जोड़ लिया है:दिखाएँ छिपाएं शर्लक कार्यवाही बार

android:theme="@style/Theme.Sherlock.Light" 

मैं स्क्रीन स्थान पर बचाने के लिए और डिफ़ॉल्ट रूप से कार्रवाई बार छिपाने के लिए और यह केवल दिखाना चाहते हैं जब उपयोगकर्ता स्क्रीन पर टैप करता है। मैंने इसे Aldiko ऐप में देखा है लेकिन यह नहीं जानता कि इसे कैसे कार्यान्वित किया जाए।

किसी भी मदद का स्वागत है।

+0

ब्याज आप देखने के लिए चाहते हो सकता है के लिए जब आप ग्रहण में नया एप्लिकेशन प्रारंभ करना चुनते हैं तो आप पूर्ण स्क्रीन ऐप टेम्पलेट में प्राप्त कर सकते हैं। एक्शन बार को छिपाने के लिए कुछ अच्छा कोड है। –

उत्तर

13

अपनी गतिविधि onCreate() पद्धति पर कोड के नीचे उपयोग छुपाने के लिए,

getSupportActionBar().hide(); 

नल घटना पर कोड के नीचे उपयोग दिखाने के लिए,

getSupportActionBar().show(); 

अधिक जानकारी के लिए ActionBarSherlock Usage का पालन करें।

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads" 
    android:id="@+id/containerMain" 

दूसरा गतिविधि के लिए अपने कोड में यह लागू:

+0

धन्यवाद। बहुत अच्छा काम करना मुझे अभी पता चला है कि शेरलॉक एक्शनबार में Google के एक्शनबार के समान एपीआई विधियां हैं। धन्यवाद एक बार फिर – Sandeep

+0

मेरे लिए भी काम किया, लेकिन ... केवल छिपाने के लिए कैसे, उदाहरण के लिए, शेयरप्रोवाइडर? – KNU

1

पहले गतिविधि लेआउट के अपने रैपिंग नोड (main_layout.xml) करने के लिए आईडी देना

boolean isActionBarShow=true; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main_layout); 

    a=getSupportActionBar(); 
    RelativeLayout rl= (RelativeLayout)findViewById(R.id.containerMain); 
    rl.setOnTouchListener(new OnTouchListener() { 

     @Override 
     public boolean onTouch(View v, MotionEvent event) { 
      if (event.getAction()==MotionEvent.ACTION_DOWN) 
       if (isActionBarShow) 
       { 
        a.hide(); 
        isActionBarShow=false;      
       } 
       else 
       { 
        a.show(); 
        isActionBarShow=true; 

       } 
      return false; 
     } 
    }); 
संबंधित मुद्दे