Это то, что я делаю в кодировании. Я хочу создавать элементы управления при нажатии кнопки. Количество раз, когда пользователь будет щелкать, я хочу добавить элементы управления для того же количества времени. Мне нужно добавить эти элементы управления в относительный макет. который я уже создал в xml-макете с одним набором элементов управления, уже в нем.. и хочу заставить его работать для большего количества элементов управления, если пользователь хочет редактировать.
View DynamicView= new View(this);
DynamicView.setId(123);
DynamicView.setLayoutParams(new LayoutParams(1, LayoutParams.MATCH_PARENT))
Ниже приведен код XML-макета.
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@android:color/black" />
проблемы: - 1) не хочу давать идентификаторы таким образом :(
DynamicView.setId(123);
хотите назначить такие идентификаторы, которые мы можем назначить в макете xml
android:id="@+id/spnrIngredients1"
2) как давать значения для относительных макетов в кодировании, таких как
android:layout_toRightOf="@id/tvIngredientsName"
android:layout_toLeftOf="@id/tvIngredientsName"
android:layout_below="@id/tvIngredientsName"
android:layout_above="@id/tvIngredientsName"
3) как задать значения цветов фона. он не принимает шестнадцатеричные коды или что-то еще.. какой тип значений int он просит..?
2) Используйте LayoutParams
для установки правил размещения представлений в RelativeLayout
:
Button b = new Button(this);
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.WRAP_CONTENT);
lp.addRule(RelativeLayout.BELOW, viewID);
b.setLayoutParams(lp);
b.setText("Added at Bottom");
mParent.addView(b, lp);
Приведенный выше код будет поместить Button
сильфонного вида с идентификатором viewID
.
3) setBackgroundColor()
(я думаю, что это метод, который вы используете) требует int, представляющего Color
, вы можете установить его в этом методе следующим образом:
Color.RED
Color.parse(Color.parseColor("#0077cc"))
android.R.color.black
1) Вы можете установить свои идентификаторы в файле values/ids.xml
а затем установить их в свои представления, а затем ссылаться на представления этих идентификаторов:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<item type="id" name="myfirstid" />
</resources>
Теперь вы можете использовать id R.id.myfirstid
в своем коде (я не знаю, это то, что вы хотите). ПРИМЕЧАНИЕ. Я не знаю, рекомендуется ли это.