पर प्रोग्राम के रूप में सेट काम नहीं करता मैं दो गतिविधियों है:पारभासी विषय जब एंड्रॉयड 2.3.3 या 4.2
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void click(View view) {
Intent intent= new Intent(this, TranslucentActivity.class);
startActivity(intent);
}
}
public class TranslucentActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
this.setTheme(android.R.style.Theme_Translucent);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_translucent);
}
}
लेआउट activity_main
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:android1="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:onClick="click" />
</RelativeLayout>
लेआउट activity_translucent
<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"
tools:context=".TranslucentActivity" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:text="Hello_world" />
</RelativeLayout>
प्रकट
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.translucencytest"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.translucencytest.MainActivity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.example.translucencytest.TranslucentActivity">
</activity>
</application>
</manifest>
जब मैं मुख्य गतिविधि में बटन क्लिक करता हूं तो यह पारदर्शी पृष्ठभूमि के साथ पारदर्शी सक्रियता शुरू करता है। मंच 4.0.3 पर एंड्रॉइड एमुलेटर में सभी ठीक दिखते हैं लेकिन अन्य प्लेटफ़ॉर्म पर, उदा। 2.3.3 या 4.2, मुझे पारदर्शी की बजाय काली पृष्ठभूमि मिलती है। क्या गलत हो सकता है?
पीएस मैं गतिविधियों के लिए थीम घोषित करने के लिए मैनिफेस्ट का उपयोग नहीं करना चाहता हूं।
मैंने अभी थीम का परीक्षण किया और यह विभिन्न एंड्रॉइड संस्करणों पर डिज़ाइन के रूप में काम करता है। सामान का एक गुच्छा है जो आपके उदाहरण के साथ गलत हो सकता है। पारदर्शी थीम विंडो को पीछे दिखाएगी, इसलिए यदि वह विंडो काला है तो आपको पारदर्शिता दिखाई नहीं देगी। जब आप अपने आवेदन के लिए थीम घोषित नहीं करते हैं तो यह पारदर्शी नहीं होगा क्योंकि एंड्रॉइड सेट थीम को कॉल करने से पहले एंड्रॉइड एक डिफ़ॉल्ट थीम का उपयोग करता है और फिर आपको अपनी होम स्क्रीन की बजाय डिफ़ॉल्ट थीम दिखाई देगी। आपको मदद करने में सक्षम होने के लिए कम से कम दो लेआउट का उपयोग उदाहरण में और मैनिफेस्ट के साथ-साथ –
@EmanuelMoecklin मैंने पोस्ट को जोड़ा है और मेरी पोस्ट में प्रकट किया है। मुझे संदेह है कि डिफ़ॉल्ट विषय पारदर्शी के बजाय दिखाया गया है, लेकिन यह 4.0.3 पर क्यों काम करता है और 2.3.3 और 4.2 पर काम नहीं करता है? – Wytas
आप अपनी खुद की @ शैली/ऐपथीम का उपयोग कर रहे हैं ताकि आपको अपने उदाहरण का परीक्षण करने में सक्षम होने के लिए भी उसे पोस्ट करना होगा। विभिन्न एंड्रॉइड संस्करण एक ही स्क्रीन तत्वों (विचारों) के लिए विभिन्न विषयों, शैलियों और संसाधनों का उपयोग करते हैं। निर्माता प्रतिस्पर्धी उपकरणों से उन्हें अलग करने के लिए अपने उपकरणों को थीम भी देते हैं। उदाहरण के लिए एक डिवाइस पर एक डिफ़ॉल्ट पृष्ठभूमि काला हो सकती है, यह थोड़ा पारदर्शी हो सकती है और किसी अन्य डिवाइस पर ढाल के साथ हो सकती है। जब तक आप उन्हें स्वयं थीम नहीं करते हैं, तब तक आप वास्तव में "चीजों" पर निर्भर नहीं हो सकते हैं। –