我想创建一个自定义小部件。
看起来像这样:
那么,我应该延长Button
,因为我想点击它吗?
如何在上面放一张图片?
我已经阅读了方法onDraw()
,但我不知道如何设置image
。
(谢谢Andrew T.)
答案 0 :(得分:2)
你可以把它变成一个复合对象:它是一个带有drawable的TextView。
TextView是可点击的,因此您可以触发点击处理程序。
这样的事情:
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:drawableLeft="@drawable/ic_launcher"
android:drawablePadding="8dp"
android:text="Title\nA little description for this object"
android:textSize="16sp"
android:onClick="click_handler"
/>
然后只需添加到您的代码中:
public void click_handler(View v)
{
// Do something in your click event
}
答案 1 :(得分:0)
将所有内容放在LinearLayout或RelativeLayout(一个ImageView,两个TextViews)上。将click侦听器添加到该布局。稍后您可以使用ListViews中的布局。
答案 2 :(得分:0)
您可以使用此
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/imageView"
......
android:layout_alignParentLeft="true" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
......
android:layout_toRightOf="@+id/imageView"
android:layout_alignTop="@+id/imageView" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
......
android:layout_below="@+id/textView1"
android:layout_alignLeft="@+id/textView1" />
</RelativeLayout>
然后编写一个类来处理它