【发布时间】:2014-03-28 08:46:51
【问题描述】:
我想在 android 中创建一个像下面标记的图像一样的 Textviews 圈。我的最终目标是制作一个时钟,其中的数字可以通过手指向左或向右滑动来旋转。
我能够使用收到的代码生成以下内容 Android align Image Buttons on a curve?
听到的主要问题是代码基于绝对布局。我想要一些适用于所有屏幕尺寸的东西,所以像这样没有绝对布局或任何其他关于如何做到这一点的建议的东西会非常有帮助。
代码稍作修改。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
AbsoluteLayout al = new AbsoluteLayout(this);
setContentView(al);
double radius = 300;
double cx = 600, cy = 600;
for(double angle = 0; angle < 360; angle += 30) {
double radAngle = Math.toRadians(angle);
double x = (Math.cos(radAngle)) * radius + cx;
double y = (1 - Math.sin(radAngle)) * radius + cy;
TextView textView = new TextView(this);
textView.setText(Double.toString(angle));
AbsoluteLayout.LayoutParams lp = new AbsoluteLayout.LayoutParams(600, 300, (int) x, (int) y);
textView.setLayoutParams(lp);
al.addView(textView);
}}
【问题讨论】:
标签: android layout textview geometry