Android - 我自己的Tile - ImageButton + TextField

时间:2017-02-18 18:10:49

标签: android

我的问题是关于构建自己的ImageButton。 我希望拥有所有具有ImageButton的东西,但我想在其上添加一些TextField。 所以我想创建具有以下内容的组件:

  1. 方形尺寸
  2. 图像在上面:100%宽度,80%高度
  3. 底部的TextField:100%宽度,20%高度
  4. 所有方形“瓷砖”必须可点击并按照常规按钮
  5. 工作

    这样的事情:

    enter image description here

    怎么做? 当你可以为此提供一些代码时,这将是非常非常好的,但在最小的选项中,我将非常感谢一些“待办事项列表”,我应该一步一步地做什么。

2 个答案:

答案 0 :(得分:1)

基本上我们正在制作一个相对布局(父母),这将是我们的图像按钮'。 Xml代码如下所示,对于Java,您只需要在此id上实现setonclicklistener。

<RelativeLayout
    android:layout_width="wrap_content"
    android:id="@+id/imageButton"
    android:layout_height="wrap_content">

    <ImageView
        android:id="@+id/page_image"
        android:layout_marginRight="6dip"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:src="@drawable/no_photo" />
    <TextView
        android:id="@+id/page_name"
        android:layout_alignTop="@id/page_image"
        android:layout_toRightOf="@id/page_image"
        android:layout_below="@id/page_image
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</RelativeLayout>

答案 1 :(得分:1)

您可以使用以下布局:对于80%和20%的高度,使用android:layout_weight属性

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/layout_id"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_weight="1"
    android:orientation="vertical">

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight=".80"
        android:src="@mipmap/ic_launcher"
        android:text="left" />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight=".20"
        android:gravity="center"
        android:text="Sample Text" />

</LinearLayout>