2016-10-04 14 views
1

私はEntityクラスにEventDtoandroid:リストビューにオブジェクトのArrayListを追加するにはどうすればいいですか?

public class EventDTO { 
private String eventSourceName; 
private String eventTime; 
private String eventReason; 
private String eventName; 


public String getEventSourceName() { 
    return eventSourceName; 
} 

public void setEventSourceName(String eventSourceName) { 
    this.eventSourceName = eventSourceName; 
} 

public String getEventTime() { 
    return eventTime; 
} 

public void setEventTime(String eventTime) { 
    this.eventTime = eventTime; 
} 

public String getEventReason() { 
    return eventReason; 
} 

public void setEventReason(String eventReason) { 
    this.eventReason = eventReason; 
} 

public String getEventName() { 
    return eventName; 
} 

public void setEventName(String eventName) { 
    this.eventName = eventName; 
} 

@Override 
public String toString() { 
    return "EventDTO{" + 
      ", eventSourceName='" + eventSourceName + '\'' + 
      ", eventTime='" + eventTime + '\'' + 
      ", eventReason='" + eventReason + '\'' + 
      ", eventName='" + eventName + '\'' + 
      '}'; 
} 

}

を作成していると私は

public static ArrayList<EventDTO> eventDTOList = new ArrayList<EventDTO>(); 

は私が怒鳴るの複数のようなrefernceために多くのイベントを追加したEventDTO型の配列リストを作成しましたtymes。

eventDTOList.add(eventDTO); 

は、今私は、ボタンの上に今

<LinearLayout 
    android:id="@+id/notifications_popup" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_marginTop="120dp" 
    android:orientation="vertical" 
    android:background="@drawable/cell_shape_gradient" 
    android:visibility="visible" 
    android:layout_marginLeft="50dp" 
    android:layout_marginRight="50dp" 
    > 

    <RelativeLayout 
     android:id="@+id/minimize_notifications" 
     android:layout_width="match_parent" 
     android:layout_height="30dp" 
     android:background="@drawable/notification_header_shape_color" 
     android:clickable="true" 
     > 

     <ImageView 
      android:id="@+id/cancel_notification" 
      android:layout_width="20dp" 
      android:layout_height="5dp" 
      android:background="@drawable/cancel_notifications" 
      android:clickable="true" 
      android:layout_alignParentRight="true" 
      android:layout_centerVertical="true" 
      android:layout_marginRight="5dp" 
      /> 

     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:text="@string/event_notification" 
      android:textColor="@color/white" 
      android:textStyle="bold" 
      android:gravity="center" 
      android:layout_alignParentLeft="true" 
      android:layout_marginLeft="5dp" 
      /> 
    </RelativeLayout> 



     <RelativeLayout 
      android:layout_width="fill_parent" 
      android:layout_height="match_parent" 
      android:orientation="vertical" 
      android:background="#fbfdfcfc" 
      android:layout_marginLeft="1dp" 
      android:layout_marginRight="1dp" 
      > 

      <ListView 
       android:id="@+id/eventList" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent 
       android:scrollbarSize="3dp" 
       android:smoothScrollbar="true" 
       android:layout_marginRight="2dp" 
       android:layout_marginLeft="2dp" 
       android:scrollbarFadeDuration="3000" 
       /> 
     </RelativeLayout> 
</LinearLayout> 

を以下の通りリストビューを持っている私は、リストビューに

final ListView listview = (ListView) findViewById(R.id.eventList); 

       ArrayAdapter<EventDTO> adapter = new ArrayAdapter<EventDTO>(GladiusLiveViewActivity.this, R.layout.listview_text_style, eventDTOList); 
       listview.setAdapter(adapter); 

が、結果のクラス名を持っているし、すべての属性名を配列のリストを追加していクリックそれに含まれている 次の2つの属性だけを表示したい 2.eventSourceName 3.eventReason

これを行う方法。

+0

は、 'EventDto.toString()'を修正しますか? – Shark

+0

私はそれを追加する必要があります。 – MKY

+0

2.eventSourceName 3.eventReasonを使用してアレイアダプタを構築し、アダプタを設定します。 – Haroon

答えて

0

はあなたEventDTOのtoStringをオーバーライドする必要があります()

何かあなたのPOJOを交換してください。助けがあるかどうか確認してください。

public class EventDTO { 
private String eventSourceName; 
private String eventTime; 
private String eventReason; 
private String eventName; 


public String getEventSourceName() { 
    return eventSourceName; 
} 

public void setEventSourceName(String eventSourceName) { 
    this.eventSourceName = eventSourceName; 
} 

public String getEventTime() { 
    return eventTime; 
} 

public void setEventTime(String eventTime) { 
    this.eventTime = eventTime; 
} 

public String getEventReason() { 
    return eventReason; 
} 

public void setEventReason(String eventReason) { 
    this.eventReason = eventReason; 
} 

public String getEventName() { 
    return eventName; 
} 

public void setEventName(String eventName) { 
    this.eventName = eventName; 
} 

@Override 
public String toString() { 
    return "EventDTO{" + 
      "eventSourceName='" + eventSourceName + '\'' + 
      ", eventReason='" + eventReason + '\'' + 
      '}'; 
} 
} 
0

この

@Override 
public String toString(){ 
return this.getEventSourceName() + " - " + this.getEventReason(); 
} 

よろしくよう

+0

私はこれだけで2つのフィールドを取得していますが、それはEvntDTO {eventName = 'SYTEMMEMORY'、eventReason = 'FULL'}の形式です 私が必要なのはSYTEMMEMORY:FULL – MKY

+0

です。あなたが次のポストの助けを借りてカスタムAdaperを作成したと言ったように:[link](https://devtut.wordpress.com/2011/06/09/custom-arrayadapter-for-a-listview-android/) – MKY

関連する問題