프로그래밍 방식으로 활동의 배경색을 흰색으로 설정하려면 어떻게합니까?
답변
사용 된 루트 레이아웃에 대한 핸들을 얻은 다음 배경색을 설정하십시오. 루트 레이아웃은 setContentView라고하는 것입니다.
setContentView(R.layout.main);
// Now get a handle to any View contained
// within the main layout you are using
View someView = findViewById(R.id.randomViewInMainLayout);
// Find the root view
View root = someView.getRootView();
// Set the color
root.setBackgroundColor(getResources().getColor(android.R.color.red));
답변
setContentView()
통화 후 활동에이 한 줄 추가
getWindow().getDecorView().setBackgroundColor(Color.WHITE);
답변
테마별로 채색하는 것을 선호합니다
<style name="CustomTheme" parent="android:Theme.Light">
<item name="android:windowBackground">@color/custom_theme_color</item>
<item name="android:colorBackground">@color/custom_theme_color</item>
</style>
답변
?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FFFFFF"
android:id="@+id/myScreen"
</LinearLayout>
즉, “android : background”는 변경하려는 XML의 태그입니다.
백그라운드 값을 동적으로 업데이트해야하는 경우 다음을 참조하십시오.
답변
당신의 onCreate()
방법에서 :
getWindow().getDecorView().setBackgroundColor(getResources().getColor(R.color.main_activity_background_color));
또한 값 폴더에 새 XML 파일이라는 새 폴더를 추가 color.xml
하고 새 색 속성을 할당해야합니다.
color.xml :
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="main_activity_background_color">#000000</color>
</resources>
color.xml
원하는 이름을 지정할 수 있지만 코드에서는이라고 R.color.yourId
합니다.
편집하다
때문에 getResources().getColor()
사용되지 않으며, 사용하는 getWindow().getDecorView().setBackgroundColor(ContextCompat.getColor(MainActivity.this, R.color.main_activity_background_color));
대신.
답변
이를 사용하여 사전 정의 된 Android 색상을 호출 할 수 있습니다.
element.setBackgroundColor(android.R.color.red);
고유 한 사용자 정의 색상 중 하나를 사용하려면 strings.xml에 사용자 정의 색상을 추가 한 후 아래를 사용하여 호출하십시오.
element.setBackgroundColor(R.color.mycolour);
그러나 layout.xml에서 색상을 설정하려면 아래를 수정하여 허용하는 모든 요소에 아래를 추가하십시오.
android:background="#FFFFFF"
답변
작업 표시 줄없이 xml 파일에 정의 된 루트보기를 얻으려면 다음을 사용할 수 있습니다.
View root = ((ViewGroup) findViewById(android.R.id.content)).getChildAt(0);
따라서 색상을 흰색으로 변경하려면
root.setBackgroundResource(Color.WHITE);