我正在制作一个应用程序,显示联系人及其详细信息,如电话号码,电子邮件等,并将其显示在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>
答案 0 :(得分:3)
xml文件:
<?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">
<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>
//add button where you want and type the code: android:onClick="functionName"
</LinearLayout>
Java文件:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
public void functionName(View view){
//set of codes you want to perform
}
}
}
答案 1 :(得分:3)
你可以在java文件中定义你的按钮的可点击功能!
在xml文件中添加代码: -
<Button
android:id="@+id/bun"
android:text="click"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
java文件:
public class MainActivity extends AppCompatActivity {
private Button b;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
b = (Button) view.findViewById(R.id.bun);
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//set codes u want to perform
}
}
});
}
}
答案 2 :(得分:3)
这是你的xml文件,它显示了textview右侧的按钮 如你所愿! :)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_marginLeft="10dp"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<ImageView
android:id="@+id/imgAvatar"
android:layout_width="70dip"
android:layout_height="70dip"
android:scaleType="fitCenter"
android:src="@mipmap/ic_launcher" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:orientation="vertical">
<TextView
android:id="@+id/tvName"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="asdffgh"
android:textStyle="bold" />
<TextView
android:id="@+id/tvPhone"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="asdffgh" />
<TextView
android:id="@+id/tvEmail"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="asdffgh" />
<TextView
android:id="@+id/tvLocation"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="asdffgh" />
</LinearLayout>
<Button
android:id="@+id/bun"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:text="click" />
</RelativeLayout>
</LinearLayout>
答案 3 :(得分:1)
<?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">
<LinearLayout android:orientation="horizontal"
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"/>
<ImageView android:id="@+id/yourClickableImage"
android:layout_width="70dip"
android:layout_height="70dip"
android:scaleType="fitCenter"
android:src="@drawable/yourClickableImage"/>
</LinearLayout>
<LinearLayout android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView android:id="@+id/tvPhone"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textStyle="bold"/>
<ImageView android:id="@+id/yourClickableImage"
android:layout_width="70dip"
android:layout_height="70dip"
android:scaleType="fitCenter"
android:src="@drawable/yourClickableImage"/>
</LinearLayout>
<LinearLayout android:orientation="horizontal"
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"
android:textStyle="bold"/>
<ImageView android:id="@+id/yourClickableImage"
android:layout_width="70dip"
android:layout_height="70dip"
android:scaleType="fitCenter"
android:src="@drawable/yourClickableImage"/>
</LinearLayout>
<LinearLayout android:orientation="horizontal"
android:layout_width="fill_parent"`enter code here`
android:layout_height="wrap_content">
<TextView android:id="@+id/tvLoation"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textStyle="bold"/>
<ImageView android:id="@+id/yourClickableImage"
android:layout_width="70dip"
android:layout_height="70dip"
android:scaleType="fitCenter"
android:src="@drawable/yourClickableImage"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
让我知道这是你想要的方式吗?告诉我,我会为你编辑它:)。