В значительной степени у меня есть Textview, который выступает в качестве дисплея звездочек, когда пользователь нажимает на кнопочную панель кнопок, которые я сделал.
Кнопки имеют текст в центре, но, кажется, когда я добавляю что-то ктекстовое свойство Textview расположение булавки номер 2 меняется в центре внизу вместо мертвой точки.Это часть xml:
<!-- PIN text -->
<TableLayout>
<TableRow android:id="@+id/btn_row1"
android:gravity="center"
android:layout_marginTop="6dip">
<!-- password text-->
<TextView
android:id="@+id/txt_pin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFFFFF"
android:text=""
android:background="@drawable/txt_background"/>
</TableRow>
</TableLayout>
<!-- PIN ends -->
<!-- Header end -->
<!-- PIN button starts -->
<TableLayout android:id="@+id/table_modes"
android:layout_marginTop="6dip">
<!-- First button rows -->
<TableRow android:id="@+id/btn_row1"
android:gravity="center">
<!-- one button-->
<Button android:id="@+id/btn_one"
android:layout_column="1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="3dip"
android:layout_marginRight="2.5dip"
android:textColor="#FFFFFF"
android:text="1"
android:background="@drawable/button_layout_med"
android:onClick="input"/>
<!-- two Button -->
<Button android:id="@+id/btn_two"
android:layout_column="2"
android:layout_width="100dip"
android:layout_height="60dip"
android:layout_marginLeft="2.5dip"
android:layout_marginRight="2.5dip"
android:gravity="center"
android:textColor="#FFFFFF"
android:text="2"
android:background="@drawable/button_layout_med"
android:onClick="input"/>
<!-- 3 button -->
<Button android:id="@+id/btn_three"
android:layout_column="3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="2.5dip"
android:layout_marginRight="3dip"
android:textColor="#FFFFFF"
android:text="3"
android:background="@drawable/button_layout_med"
android:onClick="input"/>
</TableRow>
<!-- First row ends -->
<!-- Rows continue down 3 more then a submit and back button -->
Следующая часть - это Java-код для OnClick:
public void input(View v){
Button i = (Button) v;
TextView tv_pin = (TextView) findViewById(R.id.txt_pin);
while(view_pin.length() < 10){
pin.append(i.getText().toString());
view_pin.append('*');
tv_pin.setText(view_pin.toString());
break;
}
}
Где pin и view_pin - частные статические переменные.