import android.support.v4.graphics.ColorUtils; //导入方法依赖的package包/类
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
Bundle arguments = getArguments();
View fragment = inflater.inflate(arguments.getInt(ARGUMENT_LAYOUT_RES,
R.layout.fragment_simple_slide), container, false);
TextView titleView = (TextView) fragment.findViewById(R.id.mi_title);
TextView descriptionView = (TextView) fragment.findViewById(R.id.mi_description);
ImageView imageView = (ImageView) fragment.findViewById(R.id.mi_image);
CharSequence title = arguments.getCharSequence(ARGUMENT_TITLE);
int titleRes = arguments.getInt(ARGUMENT_TITLE_RES);
CharSequence description = arguments.getCharSequence(ARGUMENT_DESCRIPTION);
int descriptionRes = arguments.getInt(ARGUMENT_DESCRIPTION_RES);
int imageRes = arguments.getInt(ARGUMENT_IMAGE_RES);
int backgroundRes = arguments.getInt(ARGUMENT_BACKGROUND_RES);
//Title
if (titleView != null) {
if (title != null) {
titleView.setText(title);
titleView.setVisibility(View.VISIBLE);
} else if (titleRes != 0) {
titleView.setText(titleRes);
titleView.setVisibility(View.VISIBLE);
} else {
titleView.setVisibility(View.GONE);
}
}
//Description
if (descriptionView != null) {
if (description != null) {
descriptionView.setText(description);
descriptionView.setVisibility(View.VISIBLE);
} else if (descriptionRes != 0) {
descriptionView.setText(descriptionRes);
descriptionView.setVisibility(View.VISIBLE);
} else {
descriptionView.setVisibility(View.GONE);
}
}
//Image
if (imageView != null) {
if (imageRes != 0) {
imageView.setImageResource(imageRes);
imageView.setVisibility(View.VISIBLE);
} else {
imageView.setVisibility(View.GONE);
}
}
@ColorInt
int textColorPrimary;
@ColorInt
int textColorSecondary;
if (backgroundRes != 0 &&
ColorUtils.calculateLuminance(ContextCompat.getColor(getContext(), backgroundRes)) < 0.6) {
//Use light text color
textColorPrimary = ContextCompat.getColor(getContext(), R.color.mi_text_color_primary_dark);
textColorSecondary = ContextCompat.getColor(getContext(), R.color.mi_text_color_secondary_dark);
} else {
//Use dark text color
textColorPrimary = ContextCompat.getColor(getContext(), R.color.mi_text_color_primary_light);
textColorSecondary = ContextCompat.getColor(getContext(), R.color.mi_text_color_secondary_light);
}
if (titleView != null) {
titleView.setTextColor(textColorPrimary);
}
if (descriptionView != null) {
descriptionView.setTextColor(textColorSecondary);
}
return fragment;
}