android - 我如何从 Android 的其他布局中获取 EditText 的 id?
问题描述
我现在正在使用 android studio 的谷歌地图并面临我无法理解的问题。我有 2 个布局,如下所示:
mani_activity.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<EditText
android:id="@+id/editTextSearch"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="9"
android:backgroundTint="@color/Gray"
android:gravity="start"
android:hint="@string/search_hint"
android:imeOptions="actionSearch"
android:inputType="text"
android:maxLines="1" />
<ImageButton
android:id="@+id/imageButtonSearch"
android:layout_width="48dp"
android:layout_height="wrap_content"
app:srcCompat="@mipmap/search" />
</LinearLayout>
和 map_fragment_layout:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<fragment
android:id="@+id/framentGoogleMap"
android:name="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent">
</fragment>
<ImageView
android:id="@+id/ic_gps"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"
android:layout_marginRight="10dp"
android:layout_marginBottom="10dp"
android:background="@drawable/img"
android:src="@drawable/ic_gps"
android:visibility="visible" />
</RelativeLayout>
我的应用是这样的:
在编辑文本属于 main_activity.xml 布局?那么是否有可能在 Fragment 中访问 MainActivity 以获取 EditText 框的 id ?
解决方案
是的,您可以使用
View view = getActivity().findViewById(R.id.editTextSearch)
这为您提供了视图,然后您可以将其转换为您需要的任何视图
if(view instanceof EditText) {
editTextSearch = (EditText) view;
//TODO do something with this
}
开发人员文档:与活动通信
推荐阅读
- c++ - 如何从文本文件中填充指针数组?
- jsf - f:ajax 渲染引用迭代组件
- angular - 具有可变项目高度的 cdk-virtual-scroll-viewport
- c - mDNS 导致在 esp8266 上重新启动
- if-statement - Google 表格 - 如果多个单元格匹配,则将第三个单元格复制到第四个单元格
- linux - Unix中的csv文件操作并将值附加到每一行
- javascript - 如何使用书签在所有浏览器的新选项卡中打开 URL?
- r - R如何在每个单层中使用光栅堆栈重新分配列表中的像素值?
- r - 按列值对 DF 的所有行应用数学计算
- python - 为什么我不能在 PyCharm 中读取 csv 文件?