我正在尝试制作一个由另一个控件组成的控件。我尝试过很多方法,但似乎都没有用......你问为什么我需要那个? beauau
我想做 卷文本,它将由此自定义控件显示
public class MainMenuItem extends View {
private MainMenuItemHelper firstLayerItem;
private MainMenuItemHelper secondLayerItem;
...
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
secondLayerItem.draw(canvas);
firstLayerItem.draw(canvas);
}
}
public class MainMenuItemHelper extends TextView {
private List<DrawCommand> commands;
...
@Override
protected void onDraw(Canvas canvas) {
for (DrawCommand command : commands) {
command.draw(canvas, getPaint());
super.onDraw(canvas);
}
}
}
答案 0 :(得分:1)
控件是另一个控件的组合
您至少需要一个类似RelativeLayout
或LinearLayout
的布局,因为视图不能包含其他视图。您需要ViewGroup
代替。
我不知道您想要放置它的位置和方式,但最简单的方法是简单地创建一个包含控件的xml文件,并像平常一样对它们进行样式化。
阴影颜色可以由android:shadowColor
定义,以便为文字添加阴影。
使文本本身成为一个渐变可能会非常棘手。