У меня есть кнопка с надписью «Войти». Когда пользователь нажимает на нее, появляется диалоговое окно с предупреждением, в котором содержится информация о входе пользователя. Как только пользователь вводит свою информацию и нажимает «ОК», кнопка растягивается до ширины, необходимой для размещения «Добро пожаловать, [имя пользователя]». Я пытаюсь анимировать изменение ширины кнопки с «Войти» на «Добро пожаловать, [имя пользователя]».
Я сделал фон кнопки с помощью патча из девяти, который отлично работает, если я указываю разную ширину в файле xml. Когда я пытаюсь анимировать изменение ширины от ширины по умолчанию до большей ширины, она просто растягивается, как обычный .png, а не 9.png.
Вот код, который я использую для растягивания от одной статической ширины к другой:
<Button
android:id="@+id/signIn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="@drawable/button_nine_patch"
android:textSize="20dip"
android:layout_marginBottom="-2dip" />
И
ScaleAnimation stretch = new ScaleAnimation(1.0f ,10.0f, 1.0f, 1.0f);
this.signIn = (Button) this.findViewById(R.id.signIn);
this.signIn.setOnClickListener(this);
stretch.setDuration(2000);
signIn.startAnimation(stretch);
Поскольку я не знаю, сколько букв будет в имени человека, мне нужно иметь возможность установить окончательную ширину кнопки из кода.
Я гуглил как сумасшедший и просмотрел всю документацию по Android, но я просто не могу найти ответ на эту проблему.
Любая помощь приветствуется.