@+id/android:list"的写法

本文介绍了如何在Android开发中正确配置ListActivity的布局文件。要使用ListActivity,布局文件必须包含一个ID为@id/android:list的ListView组件。文章还提供了示例代码,帮助开发者理解如何设置ListView及其实现自定义适配器。
LiveActivity本身继承了关于List操作的众多接口,我们可以方便的重写这些操作中需要的方法来实现自己需要的功能。


如果要用ListActivity,则 Activity的Layout文件中必须包括一个(只能一个)ListView,且ListView的id= "@id/android:list"。


如下代码,一个标准的ListActivity Layout文件:


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent" 
android:layout_height="fill_parent"
 >
<ListView android:id="@id/android:list"
android:layout_width="fill_parent" 
android:layout_height="fill_parent"
"/>
</LinearLayout>


 ListView的Id为固定不变的,为"@id/android:list“,ListActivity会根据id自动查找ListView引用;在 Activity 中使用 setListAdapter(adapter); 时就默认设置到了这个list上。如果按一般控件的写法 <ListView android:id="@+id/myListView" …… />,则需要 findViewById 先得到控件对像,再调用对像的 setListAdapter(adapter); 


  


         


 
<?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" android:scrollbars="vertical"> <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="20dp"> <TextView android:id="@+id/tv_enter_password_tips" style="@style/Widget.TPDesign.TextView.Primary.Headline4" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginHorizontal="@dimen/tpds_all_dp_20" android:layout_marginTop="@dimen/tpds_card_view_spacing" android:text="@string/wisp_join_network_title" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> <com.tplink.design.card.TPConstraintCardView android:id="@+id/card_ssid" style="?attr/materialCardViewStyle" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/tpds_card_view_spacing" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/tv_enter_password_tips"> <com.tplink.design.list.TPTwoLineItemView android:id="@+id/item_ssid" android:layout_width="match_parent" android:layout_height="wrap_content" /> </com.tplink.design.card.TPConstraintCardView> <com.tplink.design.text.TPTextField android:id="@+id/tf_wireless_ssid" style="@style/Widget.TPDesign.TextInputLayout.SingleLine" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginStart="@dimen/tpds_card_view_margin_horizontal" android:layout_marginTop="@dimen/tpds_card_view_spacing" android:layout_marginEnd="@dimen/tpds_card_view_margin_horizontal" android:hint="@string/wireless_network_name" android:visibility="gone" app:endIconMode="clear_text" app:layout_constraintTop_toBottomOf="@id/tv_enter_password_tips"> <requestFocus /> </com.tplink.design.text.TPTextField> <androidx.constraintlayout.widget.Barrier android:id="@+id/barrier_password" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" app:barrierDirection="bottom" app:constraint_referenced_ids="card_ssid,tf_wireless_ssid" /> <com.tplink.design.card.TPConstraintCardView android:id="@+id/card_password" style="?attr/materialCardViewStyle" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/tpds_card_view_spacing" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/barrier_password"> <com.tplink.design.text.TPInnerErrorTextField android:id="@+id/tf_password" style="@style/Widget.TPDesign.TextInputLayout.InnerError" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="@string/common_password" android:inputType="textPassword" app:innerPasswordToggleEnabled="true" /> </com.tplink.design.card.TPConstraintCardView> <TextView android:id="@+id/tv_password_tip" style="@style/Widget.TPDesign.TextView.Secondary.Body1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:layout_marginStart="@dimen/tpds_card_view_margin_horizontal" android:layout_marginTop="@dimen/tpds_card_view_spacing" android:text="@string/onboarding_manual_enter_pwd_tip" android:visibility="gone" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/card_password" /> <!-- todo band,security,--> <com.tplink.design.card.TPConstraintCardView android:id="@+id/card_band" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginHorizontal="@dimen/tpds_all_dp_16" android:layout_marginTop="@dimen/tpds_all_dp_16" android:visible="false" app:layout_constraintTop_toBottomOf="@id/tv_password_tip"/> <com.tplink.design.list.TPTwoLineItemView android:id="@+id/tl_band" android:layout_width="match_parent" android:layout_height="wrap_content" android:visibility="gone" app:itemDivider="false" app:itemEndIcon="@drawable/mp_svg_arrow_end" app:itemTitle="@string/common_band" app:layout_constraintTop_toTopOf="parent" /> </com.tplink.design.card.TPConstraintCardView> <com.tplink.design.card.TPConstraintCardView android:id="@+id/card_security" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginHorizontal="@dimen/tpds_all_dp_16" android:layout_marginTop="@dimen/tpds_all_dp_16" android:visible="false" app:layout_constraintTop_toBottomOf="@id/card_band"/> <com.tplink.design.list.TPTwoLineItemView android:id="@+id/tl_security" android:layout_width="match_parent" android:layout_height="wrap_content" android:visibility="gone" app:itemContent="@string/advanced_dynamic_ip" app:itemDivider="false" app:itemEndIcon="@drawable/mp_svg_arrow_end" app:itemTitle="@string/m6_monthly_report_security_item_title" app:layout_constraintTop_toTopOf="parent" /> </com.tplink.design.card.TPConstraintCardView> <!-- todo 这里需要新增一个barrier 待验证是否正常--> <com.tplink.design.card.TPConstraintCardView android:id="@+id/card_advanced_setting" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginHorizontal="@dimen/tpds_all_dp_16" android:layout_marginTop="@dimen/tpds_all_dp_16" android:visible="false" app:layout_constraintTop_toTopOf="parent" /> <com.tplink.design.list.TPTwoLineItemView android:id="@+id/tl_advanced_setting" android:layout_width="match_parent" android:layout_height="wrap_content" app:itemActionMode="switch_compact" app:itemDivider="false" app:itemTitle="@string/onboarding_usb_modem_advanced_settings" app:layout_constraintTop_toTopOf="parent" /> <com.tplink.design.list.TPTwoLineItemView android:id="@+id/tl_front_end_ap" android:layout_width="match_parent" android:layout_height="wrap_content" android:visibility="gone" app:itemContent="@string/onboarding_auto_select_optimal_node" app:itemDivider="true" app:itemEndIcon="@drawable/mp_svg_arrow_end" app:itemTitle="@string/onboarding_mac_front_end_ap_title" app:layout_constraintTop_toBottomOf="@id/tl_advanced_setting" /> <com.tplink.design.list.TPTwoLineItemView android:id="@+id/tl_internet_connection_type" android:layout_width="match_parent" android:layout_height="wrap_content" android:visibility="gone" app:itemContent="@string/advanced_dynamic_ip" app:itemDivider="false" app:itemEndIcon="@drawable/mp_svg_arrow_end" app:itemTitle="@string/advanced_internet_connection_type" app:layout_constraintTop_toBottomOf="@id/tl_front_end_ap" /> </com.tplink.design.card.TPConstraintCardView> <com.tplink.design.card.TPConstraintCardView android:id="@+id/card_static_ip" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginHorizontal="@dimen/tpds_all_dp_16" android:layout_marginTop="@dimen/tpds_all_dp_16" android:visible="false" app:layout_constraintTop_toBottomOf="@id/card_advanced_setting"> <com.tplink.design.text.TPTextField android:id="@+id/ip_et" style="@style/Widget.TPDesign.TextInputLayout" android:layout_width="match_parent" android:layout_height="wrap_content" android:digits="0123456789." android:hint="@string/advanced_ip" android:inputType="numberDecimal" app:layout_constraintTop_toTopOf="parent" app:placeholderText="@string/common_required" /> <com.tplink.design.text.TPTextField android:id="@+id/subnet_mask_et" style="@style/Widget.TPDesign.TextInputLayout" android:layout_width="match_parent" android:layout_height="wrap_content" android:digits="0123456789." android:hint="@string/advanced_subnet_mask" android:inputType="numberDecimal" app:layout_constraintTop_toBottomOf="@id/ip_et" app:placeholderText="@string/common_required" /> <com.tplink.design.text.TPTextField android:id="@+id/gateway_et" style="@style/Widget.TPDesign.TextInputLayout" android:layout_width="match_parent" android:layout_height="wrap_content" android:digits="0123456789." android:hint="@string/advanced_default_gateway" android:inputType="numberDecimal" app:layout_constraintTop_toBottomOf="@id/subnet_mask_et" app:placeholderText="@string/common_required" /> <com.tplink.design.text.TPTextField android:id="@+id/primary_dns_et" style="@style/Widget.TPDesign.TextInputLayout" android:layout_width="match_parent" android:layout_height="wrap_content" android:digits="0123456789." android:hint="@string/advanced_primary_dns" android:inputType="numberDecimal" app:layout_constraintTop_toBottomOf="@id/gateway_et" app:placeholderText="@string/common_required" /> <com.tplink.design.text.TPTextField android:id="@+id/second_dns_et" style="@style/Widget.TPDesign.TextInputLayout" android:layout_width="match_parent" android:layout_height="wrap_content" android:digits="0123456789." android:hint="@string/advanced_alternate_dns" android:inputType="numberDecimal" app:layout_constraintTop_toBottomOf="@id/primary_dns_et" app:placeholderText="@string/common_optional" /> </com.tplink.design.card.TPConstraintCardView> <TextView android:id="@+id/tv_no_pwd_tip" style="@style/Widget.TPDesign.TextView.Secondary.Body1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:layout_marginStart="@dimen/tpds_card_view_margin_horizontal" android:layout_marginTop="@dimen/tpds_card_view_spacing" android:text="@string/onboarding_unsecured_network_tip" android:visibility="gone" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/card_static_ip" /> </androidx.constraintlayout.widget.ConstraintLayout> </ScrollView> 报错了 帮我看看哪个 标签问题 标记出来并修改
最新发布
12-04
你这样改没用,他还是那样跟原来没变化。原来是这样<?xml version="1.0" encoding="utf-8"?> <androidx.core.widget.NestedScrollView 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:fillViewport="true" android:fitsSystemWindows="true" android:layout_marginTop="?attr/actionBarSize"> <!-- 根布局:ConstraintLayout 必须 match_parent 高度才能被 NestedScrollView 正确测量 --> <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" android:layout_height="match_parent"> <!-- 🔵 垂直指南线:5%、95% --> <androidx.constraintlayout.widget.Guideline android:id="@+id/guideline_05" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" app:layout_constraintGuide_percent="0.05" /> <androidx.constraintlayout.widget.Guideline android:id="@+id/guideline_15" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" app:layout_constraintGuide_percent="0.15" /> <androidx.constraintlayout.widget.Guideline android:id="@+id/guideline_95" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" app:layout_constraintGuide_percent="0.95" /> <!-- 🔍 输入框 --> <EditText android:id="@+id/search_input" android:layout_width="0dp" android:layout_height="wrap_content" android:hint="请输入需要查询的公交线路或站点" android:textColorHint="#777777" android:textColor="@color/black" android:background="@drawable/rounded_edittext" android:minHeight="48dp" android:textSize="16sp" android:padding="12dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toStartOf="@id/search_btn" app:layout_constraintHorizontal_chainStyle="packed" app:layout_constraintTop_toTopOf="@id/guideline_05" app:layout_constraintBottom_toTopOf="@id/space_after_search" android:layout_marginStart="16dp" android:layout_marginEnd="8dp" /> <!-- 🔎 搜索按钮 --> <Button android:id="@+id/search_btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="搜索" app:layout_constraintTop_toTopOf="@id/guideline_05" app:layout_constraintBottom_toTopOf="@id/space_after_search" app:layout_constraintStart_toEndOf="@id/search_input" app:layout_constraintEnd_toEndOf="parent" android:layout_marginEnd="16dp" /> <!-- ⬛ Space: 搜索栏下方留出 5% 屏幕高度作为间隔 --> <Space android:id="@+id/space_after_search" android:layout_width="match_parent" android:layout_height="0dp" app:layout_constraintTop_toBottomOf="@id/guideline_15" app:layout_constraintBottom_toTopOf="@id/map_view" app:layout_constraintHeight_percent="0.05" /> <!-- 🗺️ 地图视图:占页面 40% 高度 --> <com.amap.api.maps.MapView android:id="@+id/map_view" android:layout_width="0dp" android:layout_height="0dp" app:layout_constraintTop_toBottomOf="@id/space_after_search" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHeight_percent="0.4" /> <!-- ⬛ Space: 地图到列表之间的空白 --> <Space android:id="@+id/space_after_map" android:layout_width="match_parent" android:layout_height="0dp" app:layout_constraintTop_toBottomOf="@id/map_view" app:layout_constraintBottom_toTopOf="@id/result_list" app:layout_constraintHeight_percent="0.03" /> <!-- 🔽 RecyclerView:结果列表,占据剩余空间 --> <androidx.recyclerview.widget.RecyclerView android:id="@+id/result_list" android:textColorHint="#777777" android:textColor="@color/black" android:layout_width="0dp" android:layout_height="wrap_content" android:background="@drawable/rounded_edittext" app:layout_constraintTop_toBottomOf="@id/space_after_map" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintBottom_toTopOf="@id/btn_go_to" android:layout_marginHorizontal="16dp" /> <!-- “到这去”按钮 --> <Button android:id="@+id/btn_go_to" android:layout_width="0dp" android:layout_height="wrap_content" android:text="到这去" android:layout_margin="16dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintBottom_toBottomOf="@id/guideline_95" /> <!-- 🌀 加载进度条:叠加在屏幕中央,不破坏原布局 --> <ProgressBar android:id="@+id/progress_bar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" android:elevation="10dp" /> </androidx.constraintlayout.widget.ConstraintLayout> </androidx.core.widget.NestedScrollView>
11-08
<LinearLayout android:id="@+id/device_list" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/tpds_all_dp_16" app:layout_constraintTop_toTopOf="parent" android:orientation="horizontal"> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/ll_site" android:layout_width="wrap_content" android:layout_height="wrap_content" android:focusable="true" android:gravity="center_horizontal" android:orientation="vertical"> <View android:id="@+id/iv_site" android:layout_width="45dp" android:layout_height="45dp" android:background="@drawable/skeleton_rounded_background" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toTopOf="parent"/> <View android:id="@+id/ll_num" android:layout_width="30dp" android:layout_height="10dp" android:layout_marginTop="4dp" android:background="@drawable/skeleton_rounded_background" app:layout_constraintTop_toBottomOf="@id/iv_site" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent"> </View> <View android:id="@+id/tv_name" android:layout_width="45dp" android:layout_height="12dp" android:layout_marginTop="4dp" android:background="@drawable/skeleton_rounded_background" android:layout_centerHorizontal="true" android:gravity="center" android:layout_below="@id/ll_num" android:textSize="@dimen/text_size_12" app:layout_constraintTop_toBottomOf="@id/ll_num" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent"> </View> </androidx.constraintlayout.widget.ConstraintLayout> </LinearLayout>我希望把5个这个约束布局平均分配在屏幕上,应该怎么写
10-15
那你给我在这个代码基础上做最小量的修改:<?xml version="1.0" encoding="utf-8"?> <androidx.core.widget.NestedScrollView 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:fillViewport="true" android:fitsSystemWindows="true" android:layout_marginTop="?attr/actionBarSize"> <!-- 根布局:ConstraintLayout 必须 match_parent 高度才能被 NestedScrollView 正确测量 --> <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" android:layout_height="match_parent"> <!-- 🔵 垂直指南线:5%、95% --> <androidx.constraintlayout.widget.Guideline android:id="@+id/guideline_05" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" app:layout_constraintGuide_percent="0.05" /> <androidx.constraintlayout.widget.Guideline android:id="@+id/guideline_15" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" app:layout_constraintGuide_percent="0.15" /> <androidx.constraintlayout.widget.Guideline android:id="@+id/guideline_95" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" app:layout_constraintGuide_percent="0.95" /> <!-- 🔍 输入框 --> <EditText android:id="@+id/search_input" android:layout_width="0dp" android:layout_height="wrap_content" android:hint="请输入需要查询的公交线路或站点" android:background="@drawable/rounded_edittext" android:minHeight="48dp" android:textSize="16sp" android:padding="12dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toStartOf="@id/search_btn" app:layout_constraintHorizontal_chainStyle="packed" app:layout_constraintTop_toTopOf="@id/guideline_05" app:layout_constraintBottom_toTopOf="@id/space_after_search" android:layout_marginStart="16dp" android:layout_marginEnd="8dp" /> <!-- 🔎 搜索按钮 --> <Button android:id="@+id/search_btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="搜索" app:layout_constraintTop_toTopOf="@id/guideline_05" app:layout_constraintBottom_toTopOf="@id/space_after_search" app:layout_constraintStart_toEndOf="@id/search_input" app:layout_constraintEnd_toEndOf="parent" android:layout_marginEnd="16dp" /> <!-- ⬛ Space: 搜索栏下方留出 5% 屏幕高度作为间隔 --> <Space android:id="@+id/space_after_search" android:layout_width="match_parent" android:layout_height="0dp" app:layout_constraintTop_toBottomOf="@id/guideline_15" app:layout_constraintBottom_toTopOf="@id/map_view" app:layout_constraintHeight_percent="0.05" /> <!-- 🗺️ 地图视图:占页面 40% 高度 --> <com.amap.api.maps.MapView android:id="@+id/map_view" android:layout_width="0dp" android:layout_height="0dp" app:layout_constraintTop_toBottomOf="@id/space_after_search" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHeight_percent="0.4" /> <!-- ⬛ Space: 地图到列表之间的空白 --> <Space android:id="@+id/space_after_map" android:layout_width="match_parent" android:layout_height="0dp" app:layout_constraintTop_toBottomOf="@id/map_view" app:layout_constraintBottom_toTopOf="@id/result_list" app:layout_constraintHeight_percent="0.03" /> <!-- 🔽 RecyclerView:结果列表,占据剩余空间 --> <androidx.recyclerview.widget.RecyclerView android:id="@+id/result_list" android:layout_width="0dp" android:layout_height="wrap_content" android:background="@drawable/rounded_edittext" app:layout_constraintTop_toBottomOf="@id/space_after_map" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintBottom_toTopOf="@id/btn_go_to" android:layout_marginHorizontal="16dp" /> <!-- “到这去”按钮 --> <Button android:id="@+id/btn_go_to" android:layout_width="0dp" android:layout_height="wrap_content" android:text="到这去" android:layout_margin="16dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintBottom_toBottomOf="@id/guideline_95" /> <!-- 🌀 加载进度条:叠加在屏幕中央,不破坏原布局 --> <ProgressBar android:id="@+id/progress_bar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" android:elevation="10dp" /> </androidx.constraintlayout.widget.ConstraintLayout> </androidx.core.widget.NestedScrollView> 我希望地图始终占页面40%的高度
11-08
但是在fragment_map中出现报错This view is not constrained. It only has designtime positions, so it will jump to (0,0) at runtime unless you add the constraints,报错位置:<TextView android:id="@+id/empty_view" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="暂无结果" android:textColor="#777" android:visibility="visible" app:layout_constraintCenter_inParent="true" />顶上的TextView标红色波浪线,目前完整代码如下:<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout 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" tools:context=".ui.map.MapFragment" android:fitsSystemWindows="true" android:layout_marginTop="?attr/actionBarSize"> <!-- 🔹 起点输入框 --> <AutoCompleteTextView android:id="@+id/map_input1" android:layout_width="0dp" android:layout_height="48dp" android:hint="请输入起点" android:textColorHint="#777777" android:textColor="@color/black" android:textSize="14sp" android:background="@drawable/rounded_edittext" android:padding="12dp" android:layout_marginStart="16dp" android:layout_marginEnd="8dp" app:layout_constraintTop_toTopOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toStartOf="@id/guideline_search" /> <!-- 🔹 终点输入框 --> <AutoCompleteTextView android:id="@+id/map_input2" android:layout_width="0dp" android:layout_height="48dp" android:hint="请输入终点" android:textColorHint="#777777" android:textColor="@color/black" android:textSize="14sp" android:background="@drawable/rounded_edittext" android:padding="12dp" android:layout_marginStart="16dp" android:layout_marginEnd="8dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toStartOf="@id/guideline_search" app:layout_constraintTop_toBottomOf="@id/map_input1" app:layout_constraintVertical_bias="0" /> <!-- 分割线:75% 处 --> <androidx.constraintlayout.widget.Guideline android:id="@+id/guideline_search" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" app:layout_constraintGuide_percent="0.75" /> <!-- 🔍 搜索按钮 --> <Button android:id="@+id/map_search" android:layout_width="0dp" android:layout_height="0dp" android:text="搜索" android:textSize="16sp" app:layout_constraintStart_toStartOf="@id/guideline_search" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toTopOf="@id/map_input1" app:layout_constraintBottom_toBottomOf="@id/map_input2" android:layout_marginEnd="16dp" /> <!-- 🗺️ 地图视图 --> <com.amap.api.maps.MapView android:id="@+id/map_view" android:layout_width="0dp" android:layout_height="0dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toBottomOf="@id/map_input2" app:layout_constraintBottom_toTopOf="@id/result_list_container" android:layout_marginTop="4dp" /> <!-- 🔲 搜索结果容器(默认隐藏) --> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/result_list_container" android:layout_width="0dp" android:layout_height="0dp" app:layout_constraintHeight_percent="0.3" app:layout_constraintBottom_toTopOf="@id/btn_go_to" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" android:background="#FFFFFF" android:elevation="8dp" android:visibility="gone"> <androidx.recyclerview.widget.RecyclerView android:id="@+id/result_list" android:layout_width="0dp" android:layout_height="0dp" android:padding="8dp" app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" /> <TextView android:id="@+id/empty_view" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="暂无结果" android:textColor="#777" android:visibility="visible" app:layout_constraintCenter_inParent="true" /> </androidx.constraintlayout.widget.ConstraintLayout> <!-- “到这去”按钮(默认隐藏) --> <Button android:id="@+id/btn_go_to" android:layout_width="0dp" android:layout_height="wrap_content" android:text="到这去" android:enabled="false" android:layout_margin="16dp" android:visibility="gone" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" /> </androidx.constraintlayout.widget.ConstraintLayout>
11-28
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值