package com.com.mr_wrong.CustomView;
import android.content.Context;
import android.content.res.TypedArray;
import android.util.AttributeSet;
import android.util.TypedValue;
import android.view.LayoutInflater;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.Utils.LogUtils;
import com.example.mr_wrong.androidstudioproject.R;
/**
* Created by Mr_Wrong on 15/8/10.
*/
public class CustomLayout extends RelativeLayout {
private ImageView mImageLeft, mImageRight;
private EditText mEditText;
private TextView mTextLeft, mTextRight;
private int rightimage, leftimage;
private int lefttextwidth;
private String lefttext, edittext, hint, righttext;
public CustomLayout(Context context) {
this(context, null);
}
public CustomLayout(Context context, AttributeSet attrs) {
this(context, attrs, 0);
}
public CustomLayout(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
LayoutInflater.from(context).inflate(R.layout.custom_layout_item, this, true);
mImageLeft = (ImageView) findViewById(R.id.iv_left);
mImageRight = (ImageView) findViewById(R.id.iv_right);
mEditText = (EditText) findViewById(R.id.etv);
mTextLeft = (TextView) findViewById(R.id.tv_left);
mTextRight = (TextView) findViewById(R.id.tv_right);
TypedArray array = context.obtainStyledAttributes(attrs,
R.styleable.CustomLayout);
rightimage = array.getResourceId(R.styleable.CustomLayout_rightimage, 0);
leftimage = array.getResourceId(R.styleable.CustomLayout_leftimage, 0);
lefttext = array.getString(R.styleable.CustomLayout_lefttext);
lefttextwidth = array.getDimensionPixelSize(R.styleable.CustomLayout_lefttextwidth, (int) TypedValue.applyDimension(
TypedValue.COMPLEX_UNIT_PX, 60, getResources().getDisplayMetrics()));
righttext = array.getString(R.styleable.CustomLayout_righttext);
hint = array.getString(R.styleable.CustomLayout_hint);
edittext = array.getString(R.styleable.CustomLayout_edittext);
array.recycle();
if (leftimage != 0) {//左边有图片
mImageLeft.setVisibility(VISIBLE);
mImageLeft.setImageResource(leftimage);
//设置左边文字的外边距
RelativeLayout.LayoutParams lp = (LayoutParams) mTextLeft.getLayoutParams();
lp.setMargins(0, 0, 0, 0);
mTextLeft.setLayoutParams(lp);
}
mTextLeft.setText(lefttext);
LogUtils.e(lefttextwidth);
if(lefttextwidth!=(int) TypedValue.applyDimension(
TypedValue.COMPLEX_UNIT_PX, 60, getResources().getDisplayMetrics())){
ViewGroup.LayoutParams lp = mTextLeft.getLayoutParams();
lp.width = lefttextwidth;
mTextLeft.setLayoutParams(lp);
}
if (rightimage != 0) {
mImageRight.setVisibility(VISIBLE);
mImageRight.setImageResource(rightimage);
}
mEditText.setText(edittext);
mEditText.setEnabled(false);
if (hint != null) {
mEditText.setHint(hint);
mEditText.setEnabled(true);
}
if (righttext != null) {
mTextRight.setText(righttext);
}
}
public ImageView getImageLeft() {
return mImageLeft;
}
public void setImageLeft(ImageView mImageLeft) {
this.mImageLeft = mImageLeft;
}
public ImageView getImageRight() {
return mImageRight;
}
public void setImageRight(ImageView mImageRight) {
this.mImageRight = mImageRight;
}
public EditText getEditText() {
return mEditText;
}
public void setEditText(EditText mEditText) {
this.mEditText = mEditText;
}
public TextView getTextLeft() {
return mTextLeft;
}
public void setTextLeft(TextView mTextLeft) {
this.mTextLeft = mTextLeft;
}
public TextView getTextRight() {
return mTextRight;
}
public void setTextRight(TextView mTextRight) {
this.mTextRight = mTextRight;
}
}