Рисуем круг программно в Android

android

225 просмотра

2 ответа

Я создаю приложение, в котором во фрагменте я должен нарисовать круг. Круг должен повторяться в зависимости от числа. Я имею в виду, что с сервера будет получено число и некоторая строка. Так что круг должен быть создан для количества раз, которое я получил, и на каждом круге при нажатии я должен иметь возможность поднять тост за полученную строку.

Для примера я получу строки 3 и 3 (a, b, c). Во фрагменте он должен автоматически создать 3 круга с каждым именем строки на нем соответственно.
Я могу создать один круг из текстового представления из XML

код круга:

<TextView
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:id="@+id/textView17"
            android:layout_gravity="center"
            android:background="@drawable/shape"
            android:gravity="center"
            android:shadowColor="@android:color/white"
            android:shadowRadius="10.0"
            android:text="STOP"
            android:textColor="@android:color/black"
            android:textSize="18sp"
            android:layout_below="@+id/carddemo1"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:layout_marginTop="15dp" />

1-е изображение - это то, что я получаю, в то время как я должен быть похожим на 2-е изображение, как определено выше.

Circle I Created выглядит как введите описание изображения здесь

Автор: Karthik CP Источник Размещён: 08.11.2019 10:59

Ответы (2)


0 плюса

Я не знаю, получил ли я Вопрос, но вам нужно создать несколько текстовых представлений для 3 кругов:

<TextView
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:id="@+id/textView17"
            android:layout_gravity="center"
            android:background="@drawable/shape"
            android:gravity="center"
            android:shadowColor="@android:color/white"
            android:shadowRadius="10.0"
            android:text="STOP"
            android:textColor="@android:color/black"
            android:textSize="18sp"
            android:layout_below="@+id/carddemo1"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:layout_marginTop="15dp" />


    <TextView
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:id="@+id/textView17"
            android:layout_gravity="center"
            android:background="@drawable/shape"
            android:gravity="center"
            android:shadowColor="@android:color/white"
            android:shadowRadius="10.0"
            android:text="STOP"
            android:textColor="@android:color/black"
            android:textSize="18sp"
            android:layout_below="@+id/carddemo1"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:layout_marginTop="15dp" />


    <TextView
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:id="@+id/textView17"
            android:layout_gravity="center"
            android:background="@drawable/shape"
            android:gravity="center"
            android:shadowColor="@android:color/white"
            android:shadowRadius="10.0"
            android:text="STOP"
            android:textColor="@android:color/black"
            android:textSize="18sp"
            android:layout_below="@+id/carddemo1"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:layout_marginTop="15dp" />



    <TextView
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:id="@+id/textView17"
            android:layout_gravity="center"
            android:background="@drawable/shape"
            android:gravity="center"
            android:shadowColor="@android:color/white"
            android:shadowRadius="10.0"
            android:text="STOP"
            android:textColor="@android:color/black"
            android:textSize="18sp"
            android:layout_below="@+id/carddemo1"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:layout_marginTop="15dp" />

Конечно, добавьте разные координаты.

Автор: Oskar Loeprecht Размещён: 20.08.2016 07:14

0 плюса

Создайте нарисованную фигуру, которая у вас уже есть

LinearLayout linearLayout = (LinearLayout)getActivity().findViewById(R.id.myViewGroupId);

запустить цикл для счетчика, который вы получаете

for (int i = 0; i < counter; i++){
        TextView textView = new TextView(getActivity());
        textView.setBackground(getResources().getDrawable(R.drawable.myShape));
        textView.setText("this is my text from the server");
        linearLayout.addView(textView);
    }
Автор: rahul Размещён: 20.08.2016 08:00
Вопросы из категории :
32x32