Switch pokazuje i ukrywa

CheckBox, RadioGroup i Switch - Aplikacje mobilne: Android krok po kroku (android)

Słuchacz `setOnCheckedChangeListener` reaguje od razu na zmianę stanu, bez osobnego przycisku. `setVisibility(View.GONE)` ukrywa widok i zwalnia jego miejsce, `View.VISIBLE` go pokazuje (jest też `View.INVISIBLE`: ukryty, ale miejsce zostaje).

{"layout":"<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<LinearLayout\n    xmlns:android=\"http://schemas.android.com/apk/res/android\"\n    android:layout_width=\"match_parent\"\n    android:layout_height=\"match_parent\"\n    android:orientation=\"vertical\"\n    android:padding=\"16dp\">\n\n    <Switch\n        android:id=\"@+id/dark\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:text=\"Ciemny motyw\" />\n\n    <TextView\n        android:id=\"@+id/info\"\n        android:layout_width=\"wrap_content\"\n        android:layout_height=\"wrap_content\"\n        android:text=\"Ciemny motyw oszczędza baterię na ekranach OLED.\"\n        android:visibility=\"gone\" />\n\n</LinearLayout>\n","code":"package com.example.app;\n\nimport android.os.Bundle;\nimport android.view.View;\nimport android.widget.*;\nimport androidx.appcompat.app.AppCompatActivity;\n\npublic class MainActivity extends AppCompatActivity {\n    @Override\n    protected void onCreate(Bundle savedInstanceState) {\n        super.onCreate(savedInstanceState);\n        setContentView(R.layout.activity_main);\n        Switch dark = findViewById(R.id.dark);\n        TextView info = findViewById(R.id.info);\n        dark.setOnCheckedChangeListener((button, isChecked) -> info.setVisibility(isChecked ? View.VISIBLE : View.GONE));\n    }\n}\n"}

Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.

Wszystkie lekcje kursu Aplikacje mobilne: Android krok po kroku·Zaloguj się, aby zapisać postęp na koncie.