我想创建一个自定义字段,我可以在其中放置多行文本和图像。 该字段可以像按钮一样使用(onclick事件等)。
答案 0 :(得分:3)
Thomas建议的内容对您来说已经足够了,但是如果您想创建自己的自定义窗口小部件,可以扩展现有的ViewGroup类 - 例如LinearLayout。您可以通过向扩展的LinearLayout添加想要的视图来制作“复合视图”。请查看下面的示例
public class MyCompositeView extends LinearLayout implements OnClickListener{
public MyCompositeView(Context context, AttributeSet attrs) {
mForwardArrow = new ImageButton(context);
mForwardArrow.setOnClickListener(mOnDownClickListener);
mBackArrow = new ImageButton(context);
mBackArrow.setOnClickListener(mOnUpClickListener);
mFrameSwitcher = new FrameSwitcherView(context, attr_orientation);
...
LayoutParams lp = LayoutParams(WRAP_CONTENT, WRAP_CONTENT);
addView(mForwardArrow, lp);
addView(mFrameSwitcher, lp);
addView(mBackArrow, lp);
...
}
}
您的组件可以实现OnClickListener,因此您可以添加自己的自定义单击侦听器等。这种方法更耗时,但它为您提供了灵活性。
此致!
答案 1 :(得分:2)
Android Button
已允许多行文字;它会根据需要自动包装。
至于添加图片,您应该能够使用标准Button
,然后使用android:drawableLeft
属性设置drawable以在旁边绘制图像(在这种情况下,在左侧) )文本。