【发布时间】:2017-02-16 18:29:55
【问题描述】:
我正在制作一个应用程序,它显示联系人及其详细信息,例如电话号码、电子邮件等,并将它们显示在 ListView 中。我想在每一行的末尾添加可点击的按钮,例如我可以单击电话号码旁边的按钮并在拨号程序中打开存储在 TextView 中的字符串,我该怎么做?我的 .xml 文件如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView android:id="@+id/imgAvatar"
android:layout_width="70dip"
android:layout_height="70dip"
android:scaleType="fitCenter"
android:src="@mipmap/ic_launcher"/>
<LinearLayout android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView android:id="@+id/tvName"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textStyle="bold"/>
<TextView android:id="@+id/tvPhone"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
<TextView android:id="@+id/tvEmail"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
<TextView android:id="@+id/tvLocation"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
</LinearLayout>
【问题讨论】:
-
请详细说明!到目前为止你做了什么?您需要实现自定义列表视图才能实现这一目标!
-
我有一个扩展 BaseAdapter 的适配器类和一个带有构造函数的类,用于在 TextView 中存储数据。我还有一个显示列表类,它实现 ListView 以显示存储在目录中的数据。目录显示正常,我只想添加功能,以便当我点击里面的按钮时,例如电话或电子邮件 TextView,它在拨号程序/电子邮件等中打开。
-
我的建议:不要使用Button的点击,而是使用onclick作为textview。当单击列表行时。使用位置获取电话号码并将其用作 URI,方法是将其传递给 ACTION_DIAL 参数。
-
谢谢你的建议,此刻,构成一个联系人的所有TextView和Avatar在触摸时都会突出显示,好像它们像一个组一样合并,我将如何去能够单独选择联系人的一部分,例如电话或电子邮件等?
标签: android xml android-studio navigation