0

のビューにラベルを追加し、私は私のListView例えばXMLを次ていますが動的にAppceleratorのチタンでのListViewItem

<ListView class="fill-height" defaultItemTemplate="item"> 
<Templates> 
    <ItemTemplate name="item" height="100dp"> 
     <View class="top-10 left-10 right-10 bottom-10" layout="vertical"> 
      <View class="size-height fill-width"> 
       <Label class="left title" bindId="name"/> 
       <Label class="right description" bindId="number"/> 
      </View> 
      <Label class="top-5 left fill-width description" height="13dp" bindId="direction"/> 
      <View width="100dp" height="40dp" layout="vertical" backgroundColor="green" bindId="envelopes"> 
      </View> 
     </View> 
    </ItemTemplate> 
</Templates> 

<ListSection id="items"/> 

私は私のリストビューを移入するためにいくつかのデータを返すために、次のコードを使用しています:

return { 
    name: {text: object.name}, 
    number: {text: object.number}, 
    direction: {text: object.direction}, 
    envelopes: { children: [Titanium.UI.createLabel({ 
     text: "first", 
     width:'30dp', 
     height:'30dp' 
    })]} 
} 

これはいくつかのデモデータですが、このコードはAndroidで、次にiOSで異なる動作になります。

iOSでは、予想通りの結果が得られます。 「封筒」ビューは、ラベル「first」を含む緑の長方形です。 Androidでは、これは機能していないようです。私は緑色の矩形のみを取得しますが、子は追加されません。

このAndroid固有の問題を解決する方法を知っている人ですか?どのようにリストビューのビューにラベルを追加するには?

<View></View>の間の)XMLを使用してエンベロープにラベルを追加すると、ラベルが表示されます。 children-propertyを使用して追加しようとすると、ラベルはビューに追加されません。

答えて

0

iOSで動作するはずのchildrenプロパティです。

私は同じ問題に直面しました。アンドロイドでの作業の唯一の解決策は、テンプレートにラベルを含めることでした。

この質問を作成しました:Get bindId from added data to an TableView inside a ListView (Titanium/Alloy)この場合、データをTableViewに設定しようとしましたが、それでも成功しませんでした。

いずれにせよ、これはお勧めできません。

あなたが必要としない場合は、選択したbindIdを知りたい場合、ItemTemplateで定義されているビューとラベル(合金を使用)のみ

関連する問題