2012-04-16 3 views
0

私はリストビューアイテムに次のレイアウトを使用しています。ListViewのアイテムレイアウトエラー

<?xml version="1.0" encoding="utf-8"?> 
<TextView xmlns:android="http://scheme.android.com/apk/res/android" 
    android:id="@+id/text1" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:gravity="center_vertical" 
    android:paddingLeft="10dip" 
    android:textSize="18sp" 
    android:minHeight="40sp" 
    /> 

しかし、logcat java.lang.RuntimeExceptionでエラーが発生しました。あなたはlayout_width引数を指定する必要があります。

私のmain.xmlは

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

    <ImageView 
     android:layout_width="70px" 
     android:layout_height="30px" 
     android:paddingLeft="2px" 
     android:paddingTop="2px" 
     android:background="@drawable/ic_launcher" 
    ></ImageView> 

    <ListView 
     android:id="@+id/myListView" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     /> 
</LinearLayout> 

であり、これは、私はそれが私がandroid.R.layoutを使用している場合ので、私のsimple_list_item_1に関連する何かがあると思う私の活動ののonCreateコード

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    context=this.getApplicationContext(); 
    this.setTitle("NP Headline News"); 

    myListView=(ListView)findViewById(R.id.myListView); 
    myListView.setOnItemClickListener(new OnItemClickListener(){ 

      @Override 
     public void onItemClick(AdapterView<?> arg0, View v, int index,long id) { 
       // TODO Auto-generated method stub 
       String urlAddress=urlAddresses[index]; 
       String urlCaption = urlsCaptions[index]; 
      } 

    }); 

    int layoutId=R.layout.simple_list_item_1; 
    // int layoutId=android.R.layout.simple_list_item_1; 
    aa = new ArrayAdapter<String>(this,layoutId,this.urlsCaptions); 

    myListView.setAdapter(aa); 
} 

です。 simple_list_item_1その後すべて正常に動作します

+0

あなたは完全なエラーテキストを投稿できます –

+0

RuntimeExceptionがこのレイアウトを参照していますか?それは正しいようです... listviewレイアウトも貼り付けてください。 –

答えて

2

はあなたのエラーは、レイアウトクリアで、あなた専用のgetViewメソッド自身ArrayAdapterを構築し、提供:

<?xml version="1.0" encoding="utf-8"?> 
<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/text1" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:gravity="center_vertical" 
    android:paddingLeft="10dip" 
    android:textSize="18sp" 
    android:minHeight="40sp" 

    /> 

をすることができますが、あなたのエラーを区別することができ、コードを含んでおり、この上記1。

私はあなたに緊張してはいけないと思っています。何かコードを書いている間は、ブロックし混乱してしまいます。

これらのタイプのエラーについては、DDMSを使用して自分自身をデバッグすることができます。 コードは非常に非常に簡単に見えるため、

と以前の回答についていくつかの単語:

のみLayoutファイルの内部でTextViewまたは任意のViewを宣言する必要はありませんガイズ。

また、Viewであるため、Canvasに単独で座ることもできます。

また、問題は"fill_parent""match_parent"ではありません。

私はあなたにあなたのエラーの理由を与えるために多くの時間を取っているので、あなたも今も緊張しているかもしれないと思います。単純に次の行では、上記の行で

xmlns:android="http://schemas.android.com/apk/res/android" 

が誤ってscheme代わりのschemas型付けされたので、ここで

私達は行く、

エラーです。

これはエラーです。

私はあなたが緊張したコードを見れば簡単にそれを得ることができたと言いました。

xmlnsは、接頭辞付きの属性を貴重なものにするために適切な名前空間を示します。

ご理解いただけると幸いです。

+0

ありがとうございます。入力ミスのため申し訳ありません – MARK

+0

@Razaいいえprobs男。冷やす...よく練習してください –

+0

"身体に910文字が追加されました" - 本当ですか?あなたはより良い説明を見つけることができませんか? [私たちについて](http://stackoverflow.com/suggested-edits/241913)について話してください。プライベートメッセージシステムがないので、この連絡方法を使用してください。とにかく - 編集を提案するときは、適切に行ってください。 –

0

LinearLayoutを追加できるユニークなTextViewを使用しているため、レイアウトの下でTextViewをプーリする必要があります

<?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" > 
<TextView xmlns:android="http://scheme.android.com/apk/res/android" 
    android:id="@+id/text1" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:gravity="center_vertical" 
    android:paddingLeft="10dip" 
    android:textSize="18sp" 
    android:minHeight="40sp" 
    /> 
</LinearLayout> 
+1

私はそれが単一のTextviewを追加することが可能だと思います。それが意味を成すかどうかは別の質問です。特に、いくつかの属性が役に立たないかもしれません。 –

+0

@Pedro Teran: 'Layout'の中に' TextView'を置くことは必須ではありません。私たちは彼が使用したように使用することができます。 –

0

私は問題が異なると思います。

カスタムアイテムビューを実行していますが、標準のAdapterViewを使用しています。

標準のarrayAdapterでは、期待される構造を満たす必要があります。

代わりにあなたが

ここ

Android Custom Listview