Activity에 contentView가 있는지 ( setContentView () 메소드가 호출 된 경우) 알기 위해 어떤 메소드를 호출해야 합니까?
답변
this.getWindow().getDecorView().findViewById(android.R.id.content)
또는
this.findViewById(android.R.id.content)
또는
this.findViewById(android.R.id.content).getRootView()
답변
레이아웃에 ID를 넣으면 다시 볼 수 있습니다.
<RelativeLayout
android:id="@+id/my_relative_layout_id"
그리고 findViewById에서 호출하십시오 …
답변
어때요?
View view = Activity.getCurrentFocus();
답변
시도해 볼 수 있습니다 View.getRootView()
.
답변
또한 호출 onContentChanged()
되었을 때 해고 된 것을 재정의 할 수도 있습니다 setContentView()
.
답변
당신이 사용하는 경우 Kotlin
this.findViewById<View>(android.R.id.content)
.rootView
.setBackgroundColor(ContextCompat.getColor(this, R.color.black))
답변
“isContentViewSet”메소드가 없습니다. 다음과 같이 setContentView 전에 try / catch 블록에 더미 requestWindowFeature 호출을 넣을 수 있습니다.
{ requestWindowFeature (Window.FEATURE_CONTEXT_MENU); setContentView (...) } catch (AndroidRuntimeException e) { // 아무것도하지 않거나 아무것도하지 않는다 }
컨텐츠 뷰가 이미 설정된 경우 requestWindowFeature에서 예외가 발생합니다.