// linearlayout里有两个TextView public View getView(int position, View convertView, ViewGroup parent) { AlwaysMarqueeTextView vodvideo_title; ImageView vodvideo_cover; TextView vodvideo_time, vodvideo_descrpition; if (convertView == null) { convertView = mInflater.inflate(R.layout.vodvideo_widget_item, null); } ItemVideoInfo curItem = null; if (mMovieParse != null) { curItem = mMovieParse.getCurInfo(position); } vodvideo_cover = (ImageView) convertView.findViewById(R.id.vodvideo_cover); if (curItem != null && isExistFile(curItem.getPicPath(0))) { Bitmap bm = BitmapFactory.decodeFile(curItem.getPicPath(0)); Drawable drawable = new BitmapDrawable(bm); if (bm == null || drawable == null) { vodvideo_cover.setBackgroundResource(R.drawable.video_load); } else { vodvideo_cover.setBackgroundDrawable(drawable); } } else { vodvideo_cover.setBackgroundResource(R.drawable.video_load); mMovieParse.downloadMoviePic(position, getListView()); } vodvideo_title = (AlwaysMarqueeTextView) convertView.findViewById(R.id.vodvideo_title); if (curItem != null && curItem.getVideoName() != null && curItem.getVideoName().length() > 0) { vodvideo_title.setText(curItem.getVideoName()); } else { vodvideo_title.setText(R.string.vodvideo_widget_defvideo); } vodvideo_time = (TextView) convertView.findViewById(R.id.vodvideo_time); if (curItem != null && curItem.getVideoTime() != null && curItem.getVideoTime().length() > 0) { vodvideo_time.setText(curItem.movie_time); } else { vodvideo_time.setText(R.string.vodvideo_widget_deftime); } vodvideo_descrpition = (TextView) convertView.findViewById(R.id.vodvideo_descrpition); if (curItem != null && curItem.getVideoDes() != null && curItem.getVideoDes().length() > 0) { vodvideo_descrpition.setText(curItem.getVideoDes()); } else { vodvideo_descrpition.setText(R.string.vodvideo_widget_decript); } return convertView; }
public void setDetailData(FilmAndPageInfo info, int index) { if (info == null) { return; } if (info.getFilmList() == null) { return; } this.index = index; this.info = info; this.film = info.getFilmList().get(index); leftBtn.requestFocus(); text_filmName.setText(this.film.getFilmName()); String str_year = ""; if (!this.film.getYear().contains("不")) { str_year = this.film.getYear() + "年"; } text_year_mins_area_type.setText( str_year + " \t" + this.film.getLongTime() + "分钟" + " \t" + this.film.getArea()); text_introduce.setText(this.film.getIntroduction() + this.film.getDescription()); text_director.setText("导演:" + this.film.getDirector()); text_actor.setText("主演:" + this.film.getActor()); text_dl_info.setText(R.string.get_film_info); leftBtn.setText(R.string.watch_online); middleBtn.setVisibility(View.VISIBLE); middleBtn.setText(R.string.download_at_once); rightBtn.setText(R.string.cancel); setLeftPlayLowRateInfo(info); new Thread() { public void run() { download = F4kDownResourceUtils.getDLstaus(film.getFilmID()); String localPlay = PropertiesUtil.getProperty(context, "local_play"); if (Boolean.parseBoolean(localPlay)) { /////////////// 测试用 download = new FilmDownLoad4k(); download.downType = DownType.FINISH; /////////////// 测试用 if (download != null) { Message msg = new Message(); msg.what = GET_DOWN_SUCCESS; msg.obj = download; handler.sendMessage(msg); } else { handler.sendEmptyMessage(GET_DOWN_FAIL); } } else { if (download != null) { Message msg = new Message(); msg.what = GET_DOWN_SUCCESS; msg.obj = download; handler.sendMessage(msg); } else { handler.sendEmptyMessage(GET_DOWN_FAIL); } if (download != null) { download = F4kDownResourceUtils.getDLstaus(download); Message msg = new Message(); msg.what = GET_DOWN_SUCCESS; msg.obj = download; handler.sendMessage(msg); } } Detail detail = MovieManager.GetInstance().getDetailFromMid(film.getMid()); if (detail != null) { Message msg = new Message(); msg.what = GET_DETAIL_SUCCESS; msg.obj = detail; handler.sendMessage(msg); } else { Log.d("get detail fail " + film.getFilmName()); } }; }.start(); }
private void initRight(Context context) { RelativeLayout layout_right = new RelativeLayout(context); LinearLayout.LayoutParams param_layout_right = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT); int margin = 35; param_layout_right.setMargins(margin, margin, margin, margin); layout_right.setLayoutParams(param_layout_right); text_filmName = new AlwaysMarqueeTextView(context); text_filmName.setId(text_filmName_id); text_filmName.setMarquee(true); text_filmName.setTextColor(Color.WHITE); text_filmName.setTextSize(TypedValue.COMPLEX_UNIT_SP, textSize + 8); RelativeLayout.LayoutParams param_text_filmName = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); param_text_filmName.addRule(RelativeLayout.CENTER_HORIZONTAL); param_text_filmName.bottomMargin = 5; text_filmName.setLayoutParams(param_text_filmName); layout_right.addView(text_filmName); text_year_mins_area_type = new TextView(context); text_year_mins_area_type.setId(text_year_mins_area_type_id); text_year_mins_area_type.setTextColor(Color.WHITE); text_year_mins_area_type.setTextSize(TypedValue.COMPLEX_UNIT_SP, textSize); RelativeLayout.LayoutParams param_text_year_mins_area_type = new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); param_text_year_mins_area_type.addRule(RelativeLayout.BELOW, text_filmName_id); param_text_year_mins_area_type.bottomMargin = 5; text_year_mins_area_type.setLayoutParams(param_text_year_mins_area_type); layout_right.addView(text_year_mins_area_type); TextView text_movie_class = new TextView(context); // 电影分类 text_movie_class.setId(text_movie_class_id); barginPrice = new TextView(context); barginPrice.append("¥0"); barginPrice.setTextColor(Color.parseColor("#00c1ea")); barginPrice.setTextSize(TypedValue.COMPLEX_UNIT_SP, textSize + 5); RelativeLayout.LayoutParams barginPriceParams = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); barginPriceParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT); barginPriceParams.addRule(RelativeLayout.ALIGN_BOTTOM, text_year_mins_area_type_id); barginPrice.setLayoutParams(barginPriceParams); barginPrice.setId(price_id); layout_right.addView(barginPrice); TextView barginPriceTextView = new TextView(context); barginPriceTextView.setText(" 促销价: "); barginPriceTextView.setTextColor(Color.GRAY); barginPriceTextView.setTextSize(TypedValue.COMPLEX_UNIT_SP, textSize); RelativeLayout.LayoutParams param_price = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); param_price.addRule(RelativeLayout.LEFT_OF, price_id); param_price.addRule(RelativeLayout.ALIGN_BOTTOM, price_id); barginPriceTextView.setLayoutParams(param_price); barginPriceTextView.setId(price_tv_id); layout_right.addView(barginPriceTextView); price = new TextView(context); price.setText("¥0 "); price.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG); price.setId(10012); price.setTextColor(Color.GRAY); price.setTextSize(TypedValue.COMPLEX_UNIT_SP, textSize); price.setId(bargin_id); RelativeLayout.LayoutParams priceParams = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); priceParams.addRule(RelativeLayout.ALIGN_BOTTOM, price_id); priceParams.addRule(RelativeLayout.LEFT_OF, price_tv_id); price.setLayoutParams(priceParams); layout_right.addView(price); TextView priceTextView = new TextView(context); priceTextView.setText("原价:"); priceTextView.setId(10012); priceTextView.setTextColor(Color.GRAY); priceTextView.setTextSize(TypedValue.COMPLEX_UNIT_SP, textSize); RelativeLayout.LayoutParams param_barginPrice = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); // param_barginPrice.addRule(RelativeLayout.ALIGN_PARENT_RIGHT); param_barginPrice.addRule(RelativeLayout.ALIGN_BOTTOM, price_id); param_barginPrice.addRule(RelativeLayout.LEFT_OF, bargin_id); priceTextView.setLayoutParams(param_barginPrice); layout_right.addView(priceTextView); text_introduce = new TextView(context); text_introduce.setTextColor(Color.WHITE); text_introduce.setTextSize(TypedValue.COMPLEX_UNIT_SP, textSize); text_introduce.setEllipsize(TruncateAt.END); text_introduce.setId(text_introduce_id); text_introduce.setMaxLines(3); text_introduce.setLineSpacing(3f, 1f); RelativeLayout.LayoutParams param_text_introduce = new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); param_text_introduce.addRule(RelativeLayout.BELOW, text_year_mins_area_type_id); text_introduce.setLayoutParams(param_text_introduce); layout_right.addView(text_introduce); text_director = new AlwaysMarqueeTextView(context); text_director.setId(text_director_id); text_director.setTextColor(Color.WHITE); text_director.setTextSize(TypedValue.COMPLEX_UNIT_SP, textSize); text_director.setMarquee(false); RelativeLayout.LayoutParams param_text_director = new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); param_text_director.addRule(RelativeLayout.BELOW, text_introduce_id); param_text_director.topMargin = 4; text_director.setLayoutParams(param_text_director); layout_right.addView(text_director); text_actor = new AlwaysMarqueeTextView(context); text_actor.setId(text_actor_id); text_actor.setTextColor(Color.WHITE); text_actor.setTextSize(TypedValue.COMPLEX_UNIT_SP, textSize); text_director.setMarquee(false); RelativeLayout.LayoutParams param_text_actor = new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); param_text_actor.addRule(RelativeLayout.BELOW, text_director_id); param_text_actor.topMargin = 4; text_actor.setLayoutParams(param_text_actor); layout_right.addView(text_actor); text_dl_info = new TextView(context); text_dl_info.setText(R.string.watch_worning_for4k); text_dl_info.setTextColor(Color.parseColor("#FFC125")); text_dl_info.setTextSize(TypedValue.COMPLEX_UNIT_SP, textSize + 2); RelativeLayout.LayoutParams param_text_dl_info = new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); param_text_dl_info.addRule(RelativeLayout.BELOW, text_actor_id); param_text_dl_info.topMargin = textSize - 10; text_dl_info.setLayoutParams(param_text_dl_info); layout_right.addView(text_dl_info); if (F4kDownResourceUtils.getDownLoadFlag() == null || !F4kDownResourceUtils.getDownLoadFlag().equals("1")) { text_dl_info.setVisibility(View.INVISIBLE); } layout_btn = new RelativeLayout(context); layout_btn.setId(layout_btn_id); RelativeLayout.LayoutParams param_layout_btn = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); param_layout_btn.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); // param_layout_btn.addRule(RelativeLayout.CENTER_HORIZONTAL); param_layout_btn.bottomMargin = 10; layout_btn.setLayoutParams(param_layout_btn); leftBtn = new FocusAbleButton(context); leftBtn.setTextSize(textSize); leftBtn.setTextColor(Color.WHITE); leftBtn.setGravity(Gravity.CENTER); leftBtn.setTextSize(textSize); leftBtn.setId(detail_left_btn_id); leftBtn.setOnClickListener( new OnClickListener() { @Override public void onClick(View v) { if (listener != null) { listener.onPlay(film); } } }); RelativeLayout.LayoutParams param_leftBtn = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); param_leftBtn.addRule(RelativeLayout.ALIGN_PARENT_LEFT); param_leftBtn.rightMargin = 45; leftBtn.setLayoutParams(param_leftBtn); layout_btn.addView(leftBtn); leftBtn_playlow = new FocusAbleButton(context); leftBtn_playlow.setTextSize(textSize); leftBtn_playlow.setTextColor(Color.WHITE); leftBtn_playlow.setGravity(Gravity.CENTER); leftBtn_playlow.setTextSize(textSize); leftBtn_playlow.setId(ID.MovieDetaiView.DETAIL_LEFT_BTN_ID); leftBtn_playlow.setOnClickListener( new OnClickListener() { @Override public void onClick(View v) { if (listener != null) { if (info instanceof F4kFilmAndPageInfo) { F4kFilmAndPageInfo info4k = (F4kFilmAndPageInfo) info; if (info4k.getFilmListLowRate().size() > index) { listener.onPlay(((F4kFilmAndPageInfo) info).getFilmListLowRate().get(index)); } else { Log.d("can not play l080p case no fid for it"); } } } } }); RelativeLayout.LayoutParams leftBtn_playlowBtn = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); leftBtn_playlowBtn.addRule(RelativeLayout.RIGHT_OF, detail_left_btn_id); leftBtn_playlowBtn.rightMargin = 45; leftBtn_playlow.setLayoutParams(leftBtn_playlowBtn); layout_btn.addView(leftBtn_playlow); middleBtn = new FocusAbleButton(context); middleBtn.setTextColor(Color.WHITE); middleBtn.setGravity(Gravity.CENTER); middleBtn.setTextSize(textSize); middleBtn.setId(middleBtn_id); middleBtn.setOnClickListener( new OnClickListener() { @Override public void onClick(View v) { if (listener != null && film != null) { listener.onDwonload(film); } } }); RelativeLayout.LayoutParams param_middleBtn = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); param_middleBtn.addRule(RelativeLayout.RIGHT_OF, ID.MovieDetaiView.DETAIL_LEFT_BTN_ID); middleBtn.setLayoutParams(param_middleBtn); layout_btn.addView(middleBtn); rightBtn = new FocusAbleButton(context); rightBtn.setTextColor(Color.WHITE); rightBtn.setGravity(Gravity.CENTER); rightBtn.setTextSize(textSize); rightBtn.setOnClickListener( new OnClickListener() { @Override public void onClick(View v) { if (listener != null && film != null) { listener.onCancel(film); } } }); rightBtn.setId(rightBtn_id); RelativeLayout.LayoutParams param_rightBtn = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); param_rightBtn.leftMargin = 45; param_rightBtn.addRule(RelativeLayout.RIGHT_OF, middleBtn_id); rightBtn.setLayoutParams(param_rightBtn); layout_btn.addView(rightBtn); layout_right.addView(layout_btn); RelativeLayout layout_love = new RelativeLayout(context); layout_love.setId(layout_love_id); RelativeLayout.LayoutParams param_layout_lov = new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT); param_layout_lov.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); layout_love.setLayoutParams(param_layout_lov); layout_right.addView(layout_love); addView(layout_right); leftBtn.setPadding(textSize, textSize - 10, textSize, textSize - 10); leftBtn_playlow.setPadding(textSize, textSize - 10, textSize, textSize - 10); middleBtn.setPadding(textSize, textSize - 10, textSize, textSize - 10); rightBtn.setPadding(textSize, textSize - 10, textSize, textSize - 10); }