У меня есть ImageView внутри RelativeLayout, который я добавил программно (ImageView добавляется кодом, а не RelativeLayout.)
Если бы я добавил ImageView с помощью XML, я бы сделал это:
‹ImageView android: id =" @ + id / login_loadingimage "
android: layout_width =" wrap_content "
android: layout_height = "wrap_content"
android: layout_centerHorizontal = "true"
android: layout_centerVertical = "true"
android: src = "@ drawable / imagefilename"
android: visibility = "invisible "
/›
Но теперь я хочу, чтобы это было сделано программно. Как мне получить правильное центрирование? Я попытался создать RelativeLaout.Parameters, но когда я создаю их, используя
RelativeLayout.LayoutParams p = new RelativeLayout.LayoutParams(this, null); //[1]
p.AddRule(...);[2]
Исключение выбрасывается в строке 1. Кроме того, я бы все равно не знал, как применить эти LayoutParameters к ViewGroup.LayutParameters.
Кроме того, я не могу просто создать ViewGroup.LayoutParameters, потому что
1. Кажется, у них нет нужных мне элементов центрирования (горизонтального и вертикального).
2. Кажется, каждый пример указывает на то, что существует конструктор, который просто принимает Layout_Width и Layout_Height в качестве параметров, но его нет.
Прежде чем кто-то скажет сначала добавить макет, расскажите, пожалуйста, как центрировать макет в коде. Спасибо.
Пожалуйста помоги.