Commit 3c0dea8b authored by shohboz's avatar shohboz

[ADD] MUS-112 Feature, add choose language screen

parent 7a8f0345
package uz.ssd.mobiuz
import android.content.Intent
import android.graphics.Color
import android.os.Bundle
import android.view.View
import android.view.WindowManager
import androidx.appcompat.app.AppCompatActivity
import dagger.hilt.android.AndroidEntryPoint
import uz.ssd.mobiuz.databinding.ActivityLanguageBinding
import uz.ssd.mobiuz.model.SharedPref
import uz.ssd.mobiuz.utils.CONSTANTS
import javax.inject.Inject
@AndroidEntryPoint
class LanguageActivity : AppCompatActivity() {
private var _bn: ActivityLanguageBinding? = null
private val bn get() = _bn ?: throw NullPointerException("cannot inflate")
@Inject
lateinit var pref: SharedPref
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
_bn = ActivityLanguageBinding.inflate(layoutInflater)
setContentView(bn.root)
window.decorView.systemUiVisibility = window.decorView.systemUiVisibility or View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR
// window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS)
// window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS)
// window.setTitleColor(Color.BLACK)
bn.apply {
uzbekLang.setOnClickListener {
setLangAndNavigate(CONSTANTS.UZ)
}
russianLang.setOnClickListener {
setLangAndNavigate(CONSTANTS.RU)
}
englishLang.setOnClickListener {
setLangAndNavigate(CONSTANTS.EN)
}
}
}
private fun setLangAndNavigate(lang: String) {
pref.language = lang
startActivity(Intent(this@LanguageActivity, AuthActivity::class.java))
finish()
}
override fun onDestroy() {
_bn = null
super.onDestroy()
}
}
\ No newline at end of file
...@@ -33,4 +33,10 @@ class SharedPref @Inject constructor(@ApplicationContext context: Context) { ...@@ -33,4 +33,10 @@ class SharedPref @Inject constructor(@ApplicationContext context: Context) {
return mySharedPref.getString("user_token", null) return mySharedPref.getString("user_token", null)
} }
var language: String
get() = mySharedPref.getString(::language.name, "")?:""
set(value) {
mySharedPref.edit().putString(::language.name, value).apply()
}
} }
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".LanguageActivity">
<ImageView
android:layout_width="match_parent"
android:scaleType="fitXY"
android:src="@drawable/background"
android:layout_marginTop="@dimen/_40sdp"
android:layout_height="@dimen/_280sdp"/>
<TextView
android:layout_width="wrap_content"
android:text="@string/choose_lang"
android:layout_gravity="start"
android:textColor="@color/black"
android:textStyle="bold"
android:textSize="16sp"
android:layout_marginStart="@dimen/_12sdp"
android:layout_marginBottom="@dimen/_12sdp"
android:layout_height="wrap_content"/>
<LinearLayout
android:layout_width="match_parent"
android:gravity="center"
android:id="@+id/uzbek_lang"
android:layout_marginHorizontal="@dimen/_12sdp"
android:paddingVertical="@dimen/_12sdp"
android:background="@drawable/bgn_lang"
android:layout_height="wrap_content">
<ImageView
android:layout_width="wrap_content"
android:src="@drawable/ic_uzbekistan"
android:layout_height="wrap_content"/>
<TextView
android:layout_width="wrap_content"
android:text="@string/uzbek"
android:textSize="14dp"
android:layout_marginStart="@dimen/_12sdp"
android:layout_height="wrap_content"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:gravity="center"
android:id="@+id/russian_lang"
android:layout_marginVertical="@dimen/_12sdp"
android:layout_marginHorizontal="@dimen/_12sdp"
android:paddingVertical="@dimen/_12sdp"
android:background="@drawable/bgn_lang"
android:layout_height="wrap_content">
<ImageView
android:layout_width="wrap_content"
android:src="@drawable/ic_russia"
android:layout_height="wrap_content"/>
<TextView
android:layout_width="wrap_content"
android:text="@string/russian"
android:textSize="14dp"
android:layout_marginStart="@dimen/_12sdp"
android:layout_height="wrap_content"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:gravity="center"
android:id="@+id/english_lang"
android:layout_marginHorizontal="@dimen/_12sdp"
android:paddingVertical="@dimen/_12sdp"
android:background="@drawable/bgn_lang"
android:layout_height="wrap_content">
<ImageView
android:layout_width="wrap_content"
android:src="@drawable/ic_united_kingdom"
android:layout_height="wrap_content"/>
<TextView
android:layout_width="wrap_content"
android:text="@string/english"
android:textSize="14dp"
android:layout_marginStart="@dimen/_12sdp"
android:layout_height="wrap_content"/>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment