[and] get ArtInfo from native object.

This commit is contained in:
d-kunin 2013-08-07 11:26:30 +03:00
parent 14f8fb3200
commit bf9a52199c
3 changed files with 24 additions and 6 deletions

View file

@ -81,12 +81,15 @@ JNIEXPORT jobject JNICALL Java_com_example_travelguide_cpp_Storage_getArticleInf
{
ArticleInfo const & info = STORAGE.GetArticleInfoByIndex(index);
jclass ArtInfoClass = env->FindClass("com/example/travelguide/article/ArticleInfo");
jmethodID initId = env->GetMethodID(ArtInfoClass, "<init>", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V");
jmethodID initId = env->GetMethodID(ArtInfoClass, "<init>", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;DD)V");
return env->NewObject(ArtInfoClass, initId,
StdString2JString(env, info.m_url),
StdString2JString(env, info.m_thumbnailUrl),
StdString2JString(env, info.m_title));
StdString2JString(env, info.m_title),
StdString2JString(env, info.m_parentUrl),
info.m_lat,
info.m_lon);
}

View file

@ -6,17 +6,30 @@ import java.io.Serializable;
public class ArticleInfo implements Serializable
{
public ArticleInfo(String articleUrl, String iconUrl, String title)
public ArticleInfo(String articleUrl, String iconUrl, String title,
String parent, double lat, double lon)
{
this.mArticleUrl = articleUrl;
this.mIconUrl = iconUrl;
this.mTitle = title;
this.mParent = parent;
this.mLat = lat;
this.mLon = lon;
}
private String mArticleUrl;
private String mIconUrl;
private String mTitle;
private final String mArticleUrl;
private final String mIconUrl;
private final String mTitle;
private final String mParent;
private final double mLat;
private final double mLon;
public String getName() { return mTitle; }
public String getIconUrl() { return mIconUrl; }
public String getArticleId() { return mArticleUrl; }
public String getParent() { return mParent; }
public double getLat() { return mLat; }
public double getLon() { return mLon; }
}

View file

@ -60,6 +60,7 @@ public class StorageArticleInfoAdapter extends BaseAdapter
holder = (ViewHolder) view.getTag();
holder.fill(mStorage.getArticleInfoByIndex(position));
view.setTag(holder);
return view;
}
@ -83,6 +84,7 @@ public class StorageArticleInfoAdapter extends BaseAdapter
{
mInfo = info;
mTitle.setText(info.getName());
mParent.setText(info.getParent());
mThumbnail.setImageDrawable(mThumbnailsProvider.getThumbnailByUrl(info.getIconUrl()));
}
}