我提到我的底部工作表编辑文本代码和图像请帮助我!我不明白我的代码出了什么问题!
软键盘不工作,但可见黑色光阴影
我的 XML 文件
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".view.dashboard.home.FullPageBottomSheetFragment">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:gravity="center_vertical"
android:orientation="horizontal">
<EditText
android:id="@+id/textSearch"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/black_border"
android:gravity="top|start"
android:focusable="true"
android:hint="@string/search_friends"
android:inputType="textMultiLine"
android:lines="1"
android:padding="10dp"
android:scrollbars="vertical"
android:textColor="@android:color/black"
android:textSize="14sp" />
<ImageView
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_marginStart="10dp"
android:src="@drawable/search_icon"/>
</LinearLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recyclerViewFriends"
android:layout_width="match_parent"
android:layout_height="700dp" />
</LinearLayout>
我的片段代码
public class FullPageBottomSheetFragment extends BottomSheetDialogFragment/* implements TextWatcher*/ {
private FragmentFullPageBottomSheetBinding binding;
private RecyclerView recyclerViewFriends; // Add this line
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
binding = FragmentFullPageBottomSheetBinding.inflate(inflater, container, false);
// Request focus to the EditText to show the soft keypad
binding.textSearch.setFocusableInTouchMode(true);
binding.textSearch.requestFocus();
// binding.textSearch.addTextChangedListener(this);
return binding.getRoot();
}
}
我第一次在我的职业中看到这种类型的错误,请帮助我修复我的代码。
听起来这个问题可能与 BottomSheet 中的 EditText 如何与软键盘交互有关。确保您的 BottomSheetDialogFragment 正确处理焦点,并尝试将以下内容添加到布局 XML 中的 EditText:
android:focusableInTouchMode="true"
android:focusable="true"
此外,检查您是否正在调整窗口设置:
getDialog().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
这应该可以解决键盘无法正常工作的问题。