ребята, когда я раздуваю свою Политику конфиденциальности на таких устройствах, как Amazon Firestick, она не будет выбирать ни одну кнопку с помощью пульта дистанционного управления.Я думаю, это потому, что мой навигационный ящик, который стоит за этим видом, имеет фокус.как я могу удалить фокус с этого вида, пока не будет нажата кнопка подтверждения в моей политике конфиденциальности?таким образом, я могу просто добавить NextfocusLeft и прямо в файл XML.
Политика конфиденциальности Xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@drawable/splash_background">
<TextView
android:layout_marginTop="100sp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="1"
android:text="P9p Studios privacy policy"
android:textStyle="bold|italic"
android:textColor="@color/buttontext_light"/>
<TextView
android:id="@+id/privacy_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="20sp"
android:layout_marginTop="20dp"
android:scrollbars="vertical"
android:textColor="@color/buttontext_light"
android:text="@string/Privacy_Text" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:orientation="horizontal">
<Button
android:id="@+id/accept"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/button"
android:layout_marginRight="10sp"
android:text="accept"
android:nextFocusRight="@id/decline"
/>
<Button
android:id="@+id/decline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/button"
android:text="decline" />
</LinearLayout>
Мой Nav Drawer и панель инструментов
private void initToolbar() {
toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
ActionBar actionbar = getSupportActionBar();
actionbar.setDisplayHomeAsUpEnabled(true);
actionbar.setHomeAsUpIndicator(R.drawable.ic_menu_orange);
}
private void initNavDrawer() {
drawerLayout = findViewById(R.id.drawer_layout);
NavigationView navigationView = findViewById(R.id.navigation_view);
setNavigationViewWidth(navigationView);
navigationView.setNavigationItemSelectedListener(
menuItem -> {
menuItem.setChecked(true);
selectedMenuItem = menuItem;
drawerLayout.closeDrawers();
if(menuItem.getItemId() == R.id.nav_add) {
Intent intent = new Intent(this, Add_Genre.class);
startActivity(intent);
} else if(menuItem.getItemId() == R.id.nav_report) {
Intent intent = new Intent(this, Report.class);
startActivity(intent);
}
Код первого запуска, которыйотображает мою политику конфиденциальности
public void checkFirstRun() {
final String PREFS_NAME = "MyPrefsFile";
final String PREF_VERSION_CODE_KEY = "version_code";
final int DOESNT_EXIST = -1;
// Get current version code
int currentVersionCode = BuildConfig.VERSION_CODE;
// Get saved version code
SharedPreferences prefs = c.getSharedPreferences(PREFS_NAME, MODE_PRIVATE);
int savedVersionCode = prefs.getInt(PREF_VERSION_CODE_KEY, DOESNT_EXIST);
// Check for first run or upgrade
if (currentVersionCode == savedVersionCode) {
// This is just a normal run
return;
} else if (savedVersionCode == DOESNT_EXIST) {
db = FirebaseDatabase.getInstance();
dbref = db.getReference().child(p9p_strings.APPNAME).child("User_Count").child("Newusers");
App_DownLoadCounter();
Button btn1;
View view;
LayoutInflater inflater = (LayoutInflater) c.getSystemService
(Context.LAYOUT_INFLATER_SERVICE);
view = inflater.inflate(R.layout.privacy_fragment, null);
view.setLayoutParams(new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
final RelativeLayout comp = rootview. findViewById(R.id.priv_layout_holder);
Button btn0,btn;
btn = view.findViewById(R.id.accept);
btn.setOnClickListener(v -> comp.removeView(view));
btn0 = view.findViewById(R.id.decline);
btn0.setOnClickListener(v -> {
comp.removeView(view);
Intent intent = new Intent(Intent.ACTION_DELETE);
intent.setData(Uri.parse("my package name:"));
c.startActivity(intent);
System.exit(0);
});
comp.addView(view);
// TODO This is a new install (or the user cleared the shared preferences)
}
Вызывается в моей MAin активности onstart () с использованием
First_Run first_run = new First_Run(MainActivity.this,rlt);
first_run.checkFirstRun();