कैसे सेट करें मैं Google टीवी के लिए एक एप्लिकेशन विकसित कर रहा हूं जहां सभी नेविगेशन डी-पैड/कीबोर्ड का उपयोग करके किया जाएगा।एंड्रॉइड एक्शनबार का अगला फोकस करने योग्य नियंत्रण प्रोग्रामेटिक रूप से
मेरी गतिविधि में एक्शनबार और क्षैतिज रूप से कुछ सूचियां हैं। सूची ए, बी & सी कहें। सूची बी & सी सूची ए के चयनित आइटम के आधार पर लोड डेटा .. ताकि वे डेटा लोड कर सकें/नहीं।
मुद्दे कि जब ActionBar ध्यान केंद्रित है और मैं D- पैड कुंजी नीचे दबाएं, ध्यान खो दिया है और सूची में सी (या बीअगर सी कोई डाटा नहीं है) .. y स्थानांतरित नहीं कर रहा है?
इस लक्ष्य को हासिल करने के लिए, मैं
getActionBar().getCustomView().setNextFocusDownId(R.Id.list_C_id);
लेकिन काम नहीं किया निम्नलिखित की तरह प्रोग्राम के ActionBar के अगले फ़ोकस करने योग्य दृश्य सेट करने की कोशिश की।
मैंने पदानुक्रम दर्शक का उपयोग करके लेआउट पदानुक्रम की जांच करने का भी प्रयास किया ... लेकिन, स्पष्ट रूप से, मुझे समझ में नहीं आया कि इसके निष्कर्षों के साथ क्या करना है।
मैं एंड्रॉइड एक्शनबार के अगले फोकस करने योग्य नियंत्रण प्रोग्रामेटिक रूप से कैसे सेट कर सकता हूं ??
किसी भी मदद की बहुत सराहना की जाती है।
गतिविधि के XML इस प्रकार है:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/mainContainer" style="@style/main" >
<!-- Splash Screen -->
<LinearLayout
android:id="@+id/splash_screen"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/welcome"
android:orientation="vertical" >
</LinearLayout>
<!-- main content holder.. it is shown afetr some time of showing above splash screen -->
<LinearLayout
android:id="@+id/main_content_screen"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:focusable="true"
android:visibility="invisible">
<!-- All Packages List -->
<LinearLayout
android:layout_width="205dp"
android:layout_height="match_parent"
android:background="@drawable/content_round_bg"
android:focusable="true"
android:orientation="vertical" >
<!-- Header of Packages-->
<RelativeLayout
style="@style/marginLeft5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/content_round_bg" >
<ImageView
android:id="@+id/packagesIcon"
style="@style/titleIcon"
android:src="@drawable/packages" >
</ImageView>
<TextView
style="@style/title"
android:layout_toRightOf="@+id/packagesIcon"
android:text="Packages" >
</TextView>
<ProgressBar
android:id="@+id/progressBarPackages"
style="@style/progressBar" />
</RelativeLayout>
<!-- <View style="@style/horizontalSeperator" /> -->
<ListView
android:id="@+id/allPackagesList"
style="@style/list"
android:nextFocusRight="@+id/gridChannels">
</ListView>
<!-- Message which is hidden by default and is made visible if list has no data -->
<LinearLayout
android:id="@+id/packageNotFound"
style="@style/emptyListIdentifier" >
<ImageView
style="@style/titleIcon"
android:src="@drawable/info" >
</ImageView>
<TextView
style="@style/emptyListIdentifierText"
android:layout_marginLeft="5dp"
android:text="Packages not available" >
</TextView>
</LinearLayout>
</LinearLayout>
<View style="@style/verticalSeperator" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:focusable="true"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/relativeLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:focusable="true"
android:layout_below="@+id/titleContainer" >
<LinearLayout
android:id="@+id/channelsContainer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="0.35"
android:background="@drawable/content_round_bg"
android:focusable="true"
android:orientation="vertical" >
<!-- Header of Channels-->
<RelativeLayout
style="@style/marginLeft5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/content_round_bg" >
<ImageView
android:id="@+id/channelsIcon"
style="@style/titleIcon"
android:src="@drawable/channels" >
</ImageView>
<TextView
style="@style/title"
android:layout_toRightOf="@+id/channelsIcon"
android:text="Channels" >
</TextView>
<ProgressBar
android:id="@+id/progressBarChannels"
style="@style/progressBar" />
</RelativeLayout>
<RelativeLayout style="@style/listsContiner" android:focusable="true" >
<GridView
android:id="@+id/gridChannels"
style="@style/grid"
android:divider="#10F1F1F1"
android:nextFocusLeft="@+id/allPackagesList"
android:nextFocusRight="@+id/gridAllVODs"
android:numColumns="2" />
</RelativeLayout>
<!-- Message which is hidden by default and is made visible if list has no data -->
<RelativeLayout
android:id="@+id/channelsNotFound"
style="@style/emptyListIdentifier" >
<ImageView
android:id="@+id/NoChannelsIcon"
style="@style/titleIcon"
android:src="@drawable/info" >
</ImageView>
<TextView
style="@style/emptyListIdentifierText"
android:layout_toRightOf="@+id/NoChannelsIcon"
android:text="Channels are currently not available" >
</TextView>
</RelativeLayout>
</LinearLayout>
<View style="@style/verticalSeperator" />
<LinearLayout
android:id="@+id/vodsContainer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="0.65"
android:background="@drawable/content_round_bg"
android:orientation="vertical" >
<!-- Header of VODs-->
<RelativeLayout
style="@style/marginLeft5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/content_round_bg" >
<ImageView
android:id="@+id/VODsIcon"
style="@style/titleIcon"
android:src="@drawable/vod" >
</ImageView>
<TextView
style="@style/title"
android:layout_toRightOf="@+id/VODsIcon"
android:text="VOD" >
</TextView>
<ProgressBar
android:id="@+id/progressBarVODs"
style="@style/progressBar" />
</RelativeLayout>
<RelativeLayout style="@style/listsContiner" >
<GridView
android:id="@+id/gridAllVODs"
style="@style/grid"
android:divider="#10F1F1F1"
android:nextFocusLeft="@+id/gridChannels"
android:nextFocusRight="@+id/allPackagesList"
android:numColumns="1" />
</RelativeLayout>
<!-- Message which is hidden by default and is made visible if list has no data -->
<RelativeLayout
android:id="@+id/videosNotFound"
style="@style/emptyListIdentifier" >
<ImageView
android:id="@+id/NoVODsIcon"
style="@style/titleIcon"
android:src="@drawable/info" >
</ImageView>
<TextView
style="@style/emptyListIdentifierText"
android:layout_centerInParent="true"
android:layout_toRightOf="@+id/NoVODsIcon"
android:text="Videos are currently not available" >
</TextView>
</RelativeLayout>
</LinearLayout>
</LinearLayout>
</RelativeLayout>
</LinearLayout>
सभी प्रत्येक सूची के कंटेनर/ग्रिड शीर्ष तक सबसे LinearLayout स्थापित किया है एंड्रॉयड: फ़ोकस करने योग्य = "true" प्रत्यक्ष या अपनी शैली में।
संपादित करें: नमूना बिल्कुल मेरी एसपीपी की स्क्रीन का वर्णन एप्लिकेशन here
से डाउनलोड किया जा सकता शामिल करें पहली सूची में । आप इसे main.xml फ़ाइल में अपनी आईडी ऑलपैकेजेज द्वारा खोज सकते हैं। मैं इसे सम्मिलित करना भूल गया। खेद इस ऐप्लिकेशन में
मुद्दे हैं:
- फोकस ActionBar मद से सूची में/ग्रिड नहीं आती है।
- ActionBar आइटम के बीच नेविगेशन लेता है एक से अधिक D- पैड "छोड़" या "सही" ले जाने के लिए
यह काम नहीं किया ... मैंने अपना प्रश्न अपडेट किया है और गतिविधि के एक्सएमएल को रखा है .. मैं बटन के साथ कुछ कस्टम हेडर का उपयोग कर सकता हूं (कार्य करने के लिए एक्शन बटन के रूप में) और लोगो के लिए छवि .. लेकिन मैं नहीं चाहता ... क्योंकि मैं इनबिल्ट एक्शनबार का उपयोग करना चाहता हूं। कृपया इसे हल करने में मेरी सहायता करें क्योंकि यह बहुत जरूरी है – Aamir
मुझे XML में ListView या ActionBar नहीं दिखाई देता है। –
लिस्ट व्यू और दो ग्रिड व्यू एक्सएमएल में हैं ... और मैंने एक्सएमएल में एक्शनबार नहीं जोड़ा है ... मैंने सिर्फ थीम को थीम सेट किया है और ऑनरेट्सप्शन मैनेयू में एक मेनू बढ़ाया है और एक्शनबार दिखाई दिया ... मैंने एंड्रॉइड एक्शनबार ट्यूटोरियल का पालन किया http://developer.android.com/guide/topics/ui/actionbar.html से। मैं सोरी हूं अगर मैंने कुछ याद किया है क्योंकि मैं एंड्रॉइड – Aamir