Я создал очень простое приложение, которое использует Android TV Activity и запускает веб-просмотр onCreate
.
Приложение загружается нормально, но у меня есть текстовое поле, в которое я пытаюсь ввести пользовательский ввод, которое не позволяет мне вводить текст. Я нажал все кнопки вверх / вниз на пульте Firestick, но пользовательский интерфейс никогда не фокусируется на текстовом поле и никогда не поднимает виртуальную клавиатуру. Однако текстовое поле работает в моем симуляторе под управлением версии Android TV, но не на Amazon Fire Stick.
Я заметил, что когда я нажимаю несколько кнопок вверх / вниз на пульте и затем нажимаю клавишу ввода, приложение фактически нажимает на какой-то элемент в одном из меню Fire Stick, который полностью отделен от моего приложения. Как будто мое приложение в целом не сфокусировано должным образом.
Я добавил autofocus
в мое поле ввода HTML
, но это тоже не сработало. Я не вижу никаких ресурсов для этой проблемы.
Вот моя onCreate
функция.
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
setContentView(R.layout.activity_main);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
WebView myWebView = (WebView) findViewById(R.id.webView);
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
myWebView.loadUrl("https://example.com/connect");
myWebView.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView viewx, String url) {
viewx.loadUrl(url);
return false;
}
});
}
Вот мой main_activity.xml
<?xml version="1.0" encoding="utf-8"?>
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main_browse_fragment"
android:name="com.desotomatrix.digitalsignageplayer.MainFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
tools:deviceIds="tv"
tools:ignore="MergeRootFrame">
<WebView
android:id="@+id/webView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:focusable="true"
tools:layout_editor_absoluteX="138dp"
tools:layout_editor_absoluteY="363dp" />
</fragment>