主要代号
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.movie);
lv =(ListView)findViewById(R.id.lstMovieData);
moviename.clear();
// tv = (TextView) findViewById(R.id.tv);
Bundle b = getIntent().getExtras();
try {
Title = b.getString("MOVIE");
t = replace(Title);
} catch (Exception e) {
}
String API = "https://api.cinemalytics.com/v1/movie/title/?value=" + t + "&auth_token=<token>";
Toast.makeText(getApplicationContext(), Title, Toast.LENGTH_LONG).show();
OkHttpClient Client = new OkHttpClient();
Request request = new Request.Builder()
.url(API).build();
Call call = Client.newCall(request);
call.enqueue(new Callback() {
@Override
public void onFailure(Request request, IOException e) {
}
@Override
public void onResponse(final Response response) throws IOException {
try {
String json = response.body().string();
Log.v(TAG, json);
if (response.isSuccessful()) {
getDATA(json);
runOnUiThread(new Runnable() {
@Override
public void run() {
mAdapter = new MovieAdapter(getApplicationContext(),moviename);
lv.setAdapter(mAdapter);
}
});
} else {
}
} catch (Exception e) {
}
}
});
}
public String replace(String str) {
return str.replaceAll(" ", "%20");
}
private void getDATA(String json) throws JSONException {
try {
moviename = new ArrayList<>();
Currentmovie c = new Currentmovie();
String story = "About The Story";
JSONArray values = new JSONArray(json);
for(int i = 0; i < values.length(); i++) {
JSONObject jsonObject = values.getJSONObject(i);
String movieTitle = jsonObject.getString("Title");
String disc = jsonObject.getString("Description");
Log.e(TAG,"GIRISH"+movieTitle);
c= new Currentmovie();
c.setTitle("Movie Name::"+movieTitle);
c.setDesc(story+"::\n"+disc);
if(jsonObject.getString("Description")==null)
{
c.setDesc(story+"::Not Available");
}
moviename.add(c);
}
}
catch (Exception e)
{
System.out.println("Error in Result as " + e.toString());
}
}
2.MovieAdapter.java
public class MovieAdapter extends BaseAdapter {
Context context;
private List<Currentmovie> movieData;
private static LayoutInflater inflater = null;
public MovieAdapter( Context context,List<Currentmovie> movieData)
{
this.context = context;
this.movieData = movieData;
inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
@Override
public int getCount() {
return movieData.size();
}
@Override
public Object getItem(int position) {
return movieData.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
public static class ViewHolder{
public TextView movieTitle,movieDesc;
public ImageView movieImage;
}
public View getView(int position, View convertView, ViewGroup parent)
{
View vi = convertView;
ViewHolder holder;
if(convertView==null){
vi = inflater.inflate(R.layout.row, null);
holder = new ViewHolder();
holder.movieTitle = (TextView) vi.findViewById(R.id.tv);
holder.movieDesc=(TextView)vi.findViewById(R.id.tv1);
vi.setTag( holder );
}
else
holder=(ViewHolder)vi.getTag();
holder.movieTitle.setText(movieData.get(position).getTitle());
holder.movieDesc.setText(movieData.get(position).getDesc());
return vi;
}
}
//我可以成功显示除图片以外的所有数据
//图片链接带有“ posterpath”键
//告诉我如何在MovieAdapter的Viewholder中加载图像
// currentmovie只是一个getter和setter类
3.当前电影
public class Currentmovie {
private String mTitle;
private String Description;
public String getDesc() {
return Description;
}
public void setDesc(String desc) {
Description = desc;
}
public String getTitle() {
return mTitle;
}
public void setTitle(String title) {
mTitle = title;
}
}
我正在使用该库并通过以下方式加载图像
首先通过创建显示选项对象
DisplayImageOptions builder = new DisplayImageOptions.Builder()
.cacheOnDisk(true)
.showImageOnLoading(R.drawable.empty_photo)
.showImageForEmptyUri(R.drawable.empty_photo)
.build();
然后通过以下方式初始化图像加载器
ImageLoader imageLoader = ImageLoader.getInstance();
并通过加载图像
imageLoader.displayImage(url, imageView, builder);
希望这会有所帮助..也将此添加到您的gradle
compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
首先参考这个
编辑: 添加到onCreate()
活动
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(this)
...
.build();
ImageLoader.getInstance().init(config);
或这个
ImageLoader.getInstance().init(ImageLoaderConfiguration.createDefault(Activity.this));
问题内容: 我需要以简单的Java独立应用程序从Web加载图像。有任何想法吗? 问题答案: 这足以启动您吗?不知道您要从那里做什么。
我想通过传递一个网址来加载多个图像。与本教程不同http://www.learn2crack.com/2014/06/android-load-image-from-internet.html其中只有一个图像被下载并使用img.setImageBitmap(图像)查看;我的问题是如何将url发送到一个方法以加载该url的图像,该方法返回一个图像,然后我在图像视图中显示它。
我想做一个reactjs页面懒惰加载图像。因此,我调用lazyLoadImages()内部的组件didMount()。我发现位于浏览器选项卡的浏览器加载指示器仍然一路旋转,直到加载所有图像。这让我认为我所做的并没有提供真正的懒惰加载图像体验。 有趣的是,如果我在setTimeout中用一个不太短的timeout参数包装lazyLoadImages(),例如100ms(不是0或甚至50ms),那么页
问题内容: 我正在使用ListView来显示一些图像和与这些图像相关的标题。我正在从互联网上获取图像。有没有一种方法可以延迟加载图像,以便在显示文本时不阻止UI并在下载图像时显示它们? 图像总数不固定。 问题答案: 这是我创建的用于保存应用程序当前正在显示的图像的内容。请注意,此处使用的“ Log”对象是我在Android内部最终Log类周围的自定义包装。
问题内容: 我有一个panel.java文件,看起来像下面的代码: 我想显示test.gif文件。我该如何完成?因为当我在Eclipse中运行它时,我只会得到其中没有图像的jframe。 问题答案: 用这个
问题内容: 我使用图片插件( image:^ 2.0.4 ),以便可以在图片上写一些内容,然后将其保存为新图片到设备或通过邮件发送。我尝试使用“ new File ” 加载图像,但Flutter出现错误。我询问并搜索,并得到一个提示,我可以使用rootBundle在Flutter中加载图像。我做到了,我得到以下错误。 [错误:topaz / lib / tonic / logging / dart