जेटपैक कंपोज़ में स्टेटस बार का रंग बदलना
हल की गई हर समस्या एक सबक है। #AndroidTips #SolvedProblemToday
Android एप्लिकेशन डिज़ाइन करते समय स्थिति पट्टी का रंग बदलना एक सामान्य कार्य है। जेटपैक कंपोज़ के साथ, यह एक सरल प्रक्रिया है जिसे कोड की कुछ ही पंक्तियों में किया जा सकता है।

जेटपैक कंपोज़ में स्टेटस बार का रंग बदलने के लिए, हम पैकेज SystemUiController
द्वारा प्रदान किए गए पैकेज का उपयोग कर सकते हैं।androidx.compose.ui.platform
सबसे पहले, हमें संगत-सिस्टमयूआईकंट्रोलर की आवश्यकता है, अपने ऐप की बिल्ड.ग्रेड फ़ाइल में निर्भरता जोड़ें:
dependencies {
implementation "com.google.accompanist:accompanist-systemuicontroller:x.y.z"
}
हमें एक कंपोज़ेबल फ़ंक्शन बनाने की आवश्यकता है जो स्टेटस बार रंग सेट करेगा (क्लास SetStatusBarColor.kt बनाएं )। यहाँ एक उदाहरण है:
@Composable
fun SetStatusBarColor(color: Color) {
val systemUiController = rememberSystemUiController()
SideEffect {
systemUiController.setSystemBarsColor(color)
}
}
अगला, हम इस फ़ंक्शन को MainActivity@Composable
पर हमारे मुख्य फ़ंक्शन में कॉल कर सकते हैं , जैसे:
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
YourAppNameTheme {
StatusBarColor(color = MaterialTheme.colors.primary)
// Other content here, example :
Surface(modifier = Modifier.fillMaxSize(), color = MaterialTheme.colors.background) {
YourAppClass()
}
}
}
}
}
और बस! कोड की कुछ ही पंक्तियों के साथ, हम अपने जेटपैक कम्पोज़-आधारित Android एप्लिकेशन में आसानी से स्टेटस बार का रंग बदल सकते हैं।
इसका उपयोग SystemUiController
केवल स्टेटस बार के रंग को बदलने तक ही सीमित नहीं है, इसका उपयोग अन्य सिस्टम यूआई कॉन्फ़िगरेशन के लिए भी किया जा सकता है, जैसे कि नेविगेशन बार, इमर्सिव मोड और बहुत कुछ।
मेरे पास मेरे रिपॉजिटरी github.com/im-o में जेटपैक कंपोज़ का उपयोग करके सैंपल ऐप है ।
हो गया और धूल गया, धन्यवाद!