/* * 官网地站:http://www.mob.com * 技术支持QQ: 4006852216 * 官方微信:ShareSDK (如果发布新版本的话,我们将会第一时间通过微信将版本更新内容推送给您。如果使用过程中有任何问题,也可以通过微信与我们取得联系,我们将会在24小时内给予回复) * * Copyright (c) 2014年 mob.com. All rights reserved. */ package cn.smssdk.gui.layout; import com.mob.tools.utils.R; import android.content.Context; import android.util.TypedValue; import android.view.Gravity; import android.view.View; import android.widget.EditText; import android.widget.ImageView; import android.widget.ImageView.ScaleType; import android.widget.LinearLayout; import android.widget.TextView; /** * TitleLayout * @author xusq * */ public class TitleLayout { static final int inHeight = 74; static final int lineHeight = 2; /**根据是否带搜索功能,创建头部标题布局*/ static LinearLayout create(Context context,boolean isSearch) { SizeHelper.prepare(context); //init base LinearLayout LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,LinearLayout.LayoutParams.WRAP_CONTENT); LinearLayout titleLayout = new LinearLayout(context); titleLayout.setLayoutParams(params); titleLayout.setOrientation(LinearLayout.VERTICAL); View topLine = new View(context); LinearLayout.LayoutParams topLineParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,SizeHelper.fromPxWidth(1)); topLine.setLayoutParams(topLineParams); topLine.setBackgroundColor(0xff454a4b); titleLayout.addView(topLine); if(isSearch) { createSearch(titleLayout,context); } else { createNormal(titleLayout,context); } View bottomLine = new View(context); LinearLayout.LayoutParams bottomLineParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,SizeHelper.fromPxWidth(2)); bottomLine.setLayoutParams(bottomLineParams); bottomLine.setBackgroundColor(0xff1a1c1d); titleLayout.addView(bottomLine); return titleLayout; } private static void createNormal(LinearLayout titleLayout,Context context) { //build the inside linearLayout int height = SizeHelper.fromPx(inHeight); LinearLayout.LayoutParams inParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,height); LinearLayout inLayout = new LinearLayout(context); inLayout.setLayoutParams(inParams); inLayout.setBackgroundColor(0xff303537); LinearLayout.LayoutParams backParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,LinearLayout.LayoutParams.MATCH_PARENT); LinearLayout backLayout = new LinearLayout(context); backLayout.setLayoutParams(backParams); backLayout.setId(Res.id.ll_back); backLayout.setPadding(SizeHelper.fromPx(14), 0, SizeHelper.fromPx(26), 0); LinearLayout.LayoutParams arrowParams = new LinearLayout.LayoutParams(SizeHelper.fromPx(15),SizeHelper.fromPx(25)); arrowParams.gravity = Gravity.CENTER_VERTICAL; arrowParams.rightMargin = SizeHelper.fromPx(14); ImageView backArrow = new ImageView(context); backArrow.setLayoutParams(arrowParams); int res = R.getBitmapRes(context, "smssdk_back_arrow"); backArrow.setBackgroundResource(res); LinearLayout.LayoutParams logoParams = new LinearLayout.LayoutParams(SizeHelper.fromPx(30),SizeHelper.fromPx(44)); logoParams.gravity = Gravity.CENTER_VERTICAL; logoParams.rightMargin = SizeHelper.fromPx(14); ImageView backLogo = new ImageView(context); backLogo.setLayoutParams(logoParams); res = R.getBitmapRes(context, "smssdk_sharesdk_icon"); backLogo.setBackgroundResource(res); backLayout.addView(backArrow); backLayout.addView(backLogo); inLayout.addView(backLayout); LinearLayout.LayoutParams titleParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,LinearLayout.LayoutParams.WRAP_CONTENT); titleParams.gravity = Gravity.CENTER_VERTICAL; TextView title = new TextView(context); title.setLayoutParams(titleParams); title.setId(Res.id.tv_title); title.setTextColor(0xffcfcfcf); title.setTextSize(TypedValue.COMPLEX_UNIT_PX, SizeHelper.fromPx(32)); inLayout.addView(title); titleLayout.addView(inLayout); } private static void createSearch(LinearLayout titleLayout,Context context) { //build the inside linearLayout int height = SizeHelper.fromPx(inHeight); LinearLayout.LayoutParams inParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,height); LinearLayout inLayout = new LinearLayout(context); inLayout.setLayoutParams(inParams); inLayout.setBackgroundColor(0xff303537); inLayout.setBaselineAligned(false); LinearLayout.LayoutParams backParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,LinearLayout.LayoutParams.MATCH_PARENT); LinearLayout backLayout = new LinearLayout(context); backLayout.setLayoutParams(backParams); backLayout.setId(Res.id.ll_back); backLayout.setPadding(SizeHelper.fromPx(14), 0, SizeHelper.fromPx(26), 0); LinearLayout.LayoutParams arrowParams = new LinearLayout.LayoutParams(SizeHelper.fromPx(15),SizeHelper.fromPx(25)); arrowParams.gravity = Gravity.CENTER_VERTICAL; arrowParams.rightMargin = SizeHelper.fromPxWidth(14); ImageView backArrow = new ImageView(context); backArrow.setLayoutParams(arrowParams); int res = R.getBitmapRes(context, "smssdk_back_arrow"); backArrow.setBackgroundResource(res); LinearLayout.LayoutParams logoParams = new LinearLayout.LayoutParams(SizeHelper.fromPx(30),SizeHelper.fromPx(44)); logoParams.gravity = Gravity.CENTER_VERTICAL; logoParams.rightMargin = SizeHelper.fromPx(14); ImageView backLogo = new ImageView(context); backLogo.setLayoutParams(logoParams); res = R.getBitmapRes(context, "smssdk_sharesdk_icon"); backLogo.setBackgroundResource(res); backLayout.addView(backArrow); backLayout.addView(backLogo); inLayout.addView(backLayout); LinearLayout.LayoutParams innerTitleParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,LinearLayout.LayoutParams.MATCH_PARENT,1); LinearLayout innerTitleLayout = new LinearLayout(context); innerTitleLayout.setLayoutParams(innerTitleParams); innerTitleLayout.setId(Res.id.llTitle); inLayout.addView(innerTitleLayout); LinearLayout.LayoutParams titleParams = new LinearLayout.LayoutParams(0,LinearLayout.LayoutParams.WRAP_CONTENT,1); titleParams.gravity = Gravity.CENTER_VERTICAL; TextView title = new TextView(context); title.setLayoutParams(titleParams); title.setId(Res.id.tv_title); res = R.getStringRes(context, "smssdk_choose_country"); title.setText(res); title.setTextColor(0xffcfcfcf); title.setTextSize(TypedValue.COMPLEX_UNIT_PX, SizeHelper.fromPx(32)); innerTitleLayout.addView(title); LinearLayout.LayoutParams searchImageParams = new LinearLayout.LayoutParams(SizeHelper.fromPx(70),LinearLayout.LayoutParams.WRAP_CONTENT); searchImageParams.gravity = Gravity.CENTER_VERTICAL; ImageView searchImage = new ImageView(context); searchImage.setLayoutParams(searchImageParams); searchImage.setId(Res.id.ivSearch); res = R.getBitmapRes(context, "smssdk_search_icon"); searchImage.setImageResource(res); searchImage.setScaleType(ScaleType.CENTER_INSIDE); searchImage.setPadding(SizeHelper.fromPx(15), 0, SizeHelper.fromPx(15), 0); innerTitleLayout.addView(searchImage); LinearLayout.LayoutParams innerSearchParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,LinearLayout.LayoutParams.WRAP_CONTENT,1); innerSearchParams.gravity = Gravity.CENTER_VERTICAL; innerSearchParams.rightMargin = SizeHelper.fromPx(18); LinearLayout innerSearchLayout = new LinearLayout(context); innerSearchLayout.setLayoutParams(innerSearchParams); innerSearchLayout.setId(Res.id.llSearch); res = R.getBitmapRes(context, "smssdk_input_bg_focus"); innerSearchLayout.setBackgroundResource(res); innerSearchLayout.setPadding(SizeHelper.fromPx(14), 0, SizeHelper.fromPx(14), 0); innerSearchLayout.setVisibility(View.GONE); inLayout.addView(innerSearchLayout); LinearLayout.LayoutParams searchIconParams = new LinearLayout.LayoutParams(SizeHelper.fromPx(36),SizeHelper.fromPx(36)); searchIconParams.gravity = Gravity.CENTER_VERTICAL; searchIconParams.rightMargin = SizeHelper.fromPx(8); ImageView searchIcon = new ImageView(context); searchIcon.setLayoutParams(searchIconParams); res = R.getBitmapRes(context, "smssdk_search_icon"); searchIcon.setImageResource(res); searchIcon.setScaleType(ScaleType.CENTER_INSIDE); innerSearchLayout.addView(searchIcon); LinearLayout.LayoutParams identifyParams = new LinearLayout.LayoutParams(0,LinearLayout.LayoutParams.WRAP_CONTENT,1); identifyParams.gravity = Gravity.CENTER_VERTICAL; EditText identify = new EditText(context); identify.setLayoutParams(identifyParams); identify.setId(Res.id.et_put_identify); res = R.getStringRes(context, "smssdk_search"); identify.setHint(res); identify.setTextColor(0xffffffff); identify.setBackgroundDrawable(null); identify.setSingleLine(true); innerSearchLayout.addView(identify); LinearLayout.LayoutParams clearParams = new LinearLayout.LayoutParams(SizeHelper.fromPx(30),SizeHelper.fromPx(30)); clearParams.gravity = Gravity.CENTER_VERTICAL; clearParams.rightMargin = SizeHelper.fromPxWidth(5); ImageView clear = new ImageView(context); clear.setLayoutParams(clearParams); clear.setId(Res.id.iv_clear); res = R.getBitmapRes(context, "smssdk_clear_search"); clear.setImageResource(res); clear.setScaleType(ScaleType.FIT_CENTER); innerSearchLayout.addView(clear); titleLayout.addView(inLayout); } }