package com.github.miao1007.animewallpaper.ui.widget;
import android.content.Context;
import android.support.annotation.ColorInt;
import android.support.annotation.NonNull;
import android.support.annotation.StringRes;
import android.util.AttributeSet;
import android.view.View;
import android.widget.ProgressBar;
import android.widget.RelativeLayout;
import android.widget.TextView;
import butterknife.BindView;
import butterknife.ButterKnife;
import com.github.miao1007.animewallpaper.R;
/**
* Created by leon on 1/18/16.
* iOS like UINavigationBar
*/
public class NavigationBar extends RelativeLayout {
@BindView(R.id.internal_navi_title) TextView mNaviTitle;
@BindView(R.id.internal_navi_progress) ProgressBar mProgress;
public NavigationBar(Context context) {
this(context, null, 0);
}
public NavigationBar(Context context, AttributeSet attrs) {
this(context, attrs, 0);
}
public NavigationBar(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
initView();
}
public boolean getProgress() {
return mProgress.getVisibility() == VISIBLE;
}
public void setProgressBar(boolean isLoading) {
if (mProgress != null) {
mProgress.setVisibility(isLoading ? VISIBLE : GONE);
}
}
public void setTitle(@NonNull CharSequence title) {
if (mNaviTitle != null) {
mNaviTitle.setText(title);
}
}
public void setTitle(@StringRes int title) {
if (mNaviTitle != null) {
mNaviTitle.setText(title);
}
}
public void setTextColor(@ColorInt int color) {
if (mNaviTitle != null) {
mNaviTitle.setTextColor(color);
}
}
/**
* Create a new relativelayout and inflate xml in it,
* remember use **merge** instead of RelativeLayout
*/
private void initView() {
View.inflate(getContext(), R.layout.internal_navigationbar, this); //correct way to inflate..
ButterKnife.bind(this);
}
//
//private void setFitTranslucent(final boolean translucent) {
// post(new Runnable() {
// @Override public void run() {
// if (StatusBarUtils.isLessKitkat() || !translucent) {
// return;
// }
// int height = StatusBarUtils.getStatusBarOffsetPx(getContext());
// setPadding(getPaddingLeft(), height + getPaddingTop(), getPaddingRight(),
// getPaddingBottom());
// getLayoutParams().height += height;
// }
// });
//}
}