Поскольку я все еще только изучаю Android (и, похоже, Amazon говорит, что пройдет 2 месяца, пока я получу книгу Hello, Android), я все еще играю в простые вещи.У меня нет проблем с отображением значка одним нажатием кнопки на моем RelativeLayout, используя ImageView .Код для его создания выглядит следующим образом:
private int mIconIdCounter = 1;
private ImageView addIcon(){
ImageView item = new ImageView(this);
item.setImageResource( R.drawable.tiles );
item.setAdjustViewBounds(true);
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams( LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT );
if( mIconIdCounter != 1 ){
params.addRule(RelativeLayout.RIGHT_OF, 1 );
}
item.setLayoutParams( params );
item.setId( mIconIdCounter );
++m_IconIdCounter;
return item;
}
и код для добавления элемента:
Button addButton = (Button)findViewById(R.id.add_new);
addButton.setOnClickListener( new OnClickListener(){
@Override
public void onClick(View view) {
addContentView( addIcon(), new RelativeLayout.LayoutParams( LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT ) );
}
});
Когда я нажимаю мою кнопку, все новые создаваемые видыпомещены друг на друга.Я бы хотел, чтобы они были расположены справа от следующего элемента.Я сделал быстрый поиск в SO статей, относящихся к RelativeLayout, и обнаружил, что они похожи ( здесь , здесь , здесь и здесь ) но в то время как они касались получения контента в RelativeView, они, похоже, не касались аспекта позиционирования.
Что я делаю не так?
РЕДАКТИРОВАТЬ:
МойОсновной XML выглядит так:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<Button
android:id="@+id/add_new"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/add_new"
android:layout_alignParentBottom="true" />
</RelativeLayout>