1

私は、その上と下LinearLayoutにある単純な垂直を持っています。私が欲しいのは、を押すと(View.GONEを使用して)非表示になり、それによって生成された空のスペースが。で埋められることです。しかし、すべての努力の結果、私はそれを実装することができませんでした。buttonListview
buttonListView

私は試しましたinvalidate()、そして、私は、私が試した、メソッドにもonDraw()与えようとしましたが、それらのどれもうまくいきませんでした。layout_weight=1ListViewforceLayout()requestLayout()

奇妙なことに、の代わりにEditTextまたはTextViewまたは他のコンポーネントがある場合ListView、その正常に動作します。つまり、を非表示Edittextにすることによって生成された空のスペースを取得しますButton。しかし、の場合ListView、それは起こりません。

4

2 に答える 2

1

これは私のエミュレーターで完全に機能しています

    btn1 = (Button) findViewById(R.id.button1);

    btn1.setOnClickListener( new OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            new ProgressTask().execute();
            btn1.setVisibility(8);
        }
    })

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"
    android:orientation="vertical" >
    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button" />

    <ListView
        android:id="@+id/itemlist"
        android:layout_below="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
</RelativeLayout>
于 2012-06-18T08:44:42.940 に答える
1

これをチェックして......

     public class TestingActivity extends ListActivity {
/** Called when the activity is first created. */
Button checkBtn;
     String[] temp={"item 1","item 2","item 3"};
/** Called when the activity is first created. */

@SuppressWarnings("unchecked")
@Override

public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.main);

        getListView().setAdapter(new  ArrayAdapter(this, android.R.layout.simple_list_item_1, temp));
      checkBtn = (Button) findViewById(R.id.button1);

      checkBtn.setOnClickListener(new View.OnClickListener()
      {

       public void onClick(View v)
       {


         checkBtn.setVisibility(View.GONE);


       }});

     } }

xmlは次のとおりです。

 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="check connetion" />

<ListView
    android:id="@android:id/list"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:scrollingCache="false" >
</ListView>

  </LinearLayout>
于 2012-06-18T08:49:55.587 に答える