내 사례는 가로 카메라 미리보기를 위해 오버레이 컨트롤러 활동을 작성하고 있습니다. 나는 투명한 주제를 쓰는 데 필요한 몇 가지 지침서를 따라 갔다. 활동은 투명해야하지만 검정색 배경입니다.
그래서 내 입술/값/style.xml은 다음과 같습니다<resources>
<style name="Theme" parent="android:Theme" />
<style name="Theme.Transparent">
<item name="android:windowBackground">@drawable/transparent_background</item>
</style>
<drawable name="transparent_background">#00000000</drawable>
</resources>
활동 조각 : 내 루트 활동에서이 활동을 시작하면
<activity android:name=".CameraPreview"
android:label="Camera"
android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".Controlls"
android:label="Controlls"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.Translucent">
</activity>
는, 레이아웃이 제대로 그려됩니다 그러나 배경은 검은 색으로 유지됩니다. 대신 @android:style/Theme.Translucent
을 사용해 보았습니다.하지만이 테마는 호출하는 활동 (가로 방향)에서 원하는 방향이 아닌 방향을 상속합니다.
편집 :
는 세로 방향으로 올바르게 미리보기를 표시하지 않는 한 가로보기로 설정되어 카메라 미리보기를 들고 응용 프로그램입니다. (old google bug report 참조)
내가하고 싶었던 것은 카메라 표면 홀더 앞에 사용자 상호 작용 인터페이스를위한 독립적 인 활동을 넣는 것이 었습니다 (이 작업은 '세로'또는 '센서'로 설정해야 함)
@android : 스타일/Theme.Translucent 투명하지만 뷰를 기본 액티비티 방향으로 고정합니다 (내 가로 뷰 카메라 미리보기). 이보기는 세로이어야합니다. –
그건 배경과 아무 관련이 없습니다. 액티비티가 오리 엔테이션을 변경하는 것을 원하지 않으면 매니페스트에서 'android : screenOrientation = "portrait"와 같은 다른 방법으로 처리됩니다. – CommonsWare
미안하지만, 나는 그것을 언급하지 않았다. 그러나 그것이 내가했던 정확하게 것이다. (내 매니페스트가있는 게시물을 편집 할 것입니다.) 지금까지 귀하의 조언을 주셔서 감사합니다. –