package com.wsg.transparentstatusbarapp;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import butterknife.ButterKnife;
public abstract class BaseFragmentV4 extends Fragment implements IBaseFragment {
private View mContextView = null;
protected Activity mContext = null;
protected final String TAG = this.getClass().getSimpleName();
private String title;
private int iconId;
private boolean isVisible;
private boolean isPrepared;
private boolean isFirstLoad = true;
protected AppCompatActivity mAppCompatActivity;
public void initToolBar(Toolbar mToolBar) {
mAppCompatActivity = (AppCompatActivity) getActivity();
if (null != mToolBar) {
mAppCompatActivity.setSupportActionBar(mToolBar);
mAppCompatActivity.getSupportActionBar().setDisplayShowHomeEnabled(false);
mAppCompatActivity.getSupportActionBar().setDisplayHomeAsUpEnabled(true);
}
}
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
mContext = activity;
Log.d(TAG, "BaseFragmentV4-->onAttach()");
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d(TAG, "BaseFragmentV4-->onCreate()");
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
Log.d(TAG, "BaseFragmentV4-->onCreateView()");
if (null == mContextView) {
initParms(getArguments());
View mView = bindView();
if (null == mView) {
isFirstLoad = true;
mContextView = inflater.inflate(bindLayout(), container, false);
} else {
mContextView = mView;
}
ButterKnife.bind(this, mContextView);
initView(mContextView);
isPrepared = true;
doBusiness(getActivity());
lazyLoad();
}
return mContextView;
}
protected void lazyLoad() {
if (!isPrepared || !isVisible || !isFirstLoad) {
return;
}
isFirstLoad = false;
lazyInitBusiness(getActivity());
}
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
if (getUserVisibleHint()) {
isVisible = true;
onVisible();
} else {
isVisible = false;
onInvisible();
}
}
@Override
public void onHiddenChanged(boolean hidden) {
super.onHiddenChanged(hidden);
if (!hidden) {
isVisible = true;
onVisible();
} else {
isVisible = false;
onInvisible();
}
}
protected void onVisible() {
lazyLoad();
}
protected void onInvisible() {
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
}
@Override
public void onSaveInstanceState(Bundle outState) {
Log.d(TAG, "BaseFragmentV4-->onSaveInstanceState()");
super.onSaveInstanceState(outState);
}
@Override
public void onStart() {
Log.d(TAG, "BaseFragmentV4-->onStart()");
super.onStart();
}
@Override
public void onResume() {
Log.d(TAG, "BaseFragmentV4-->onResume()");
super.onResume();
}
@Override
public void onPause() {
Log.d(TAG, "BaseFragmentV4-->onPause()");
super.onPause();
}
@Override
public void onStop() {
Log.d(TAG, "BaseFragmentV4-->onStop()");
super.onStop();
}
@Override
public void onDestroy() {
Log.d(TAG, "BaseFragmentV4-->onDestroy()");
super.onDestroy();
}
@Override
public void onDetach() {
Log.d(TAG, "BaseFragmentV4-->onDetach()");
super.onDetach();
}
@Override
public void onDestroyView() {
super.onDestroyView();
if (mContextView != null && mContextView.getParent() != null) {
((ViewGroup) mContextView.getParent()).removeView(mContextView);
}
}
public Activity getContext() {
return getActivity();
}
public void initIconWithText(String text, int iconId) {
this.title = text;
this.iconId = iconId;
}
public String getTitle() {
return title;
}
public int getIconId() {
return iconId;
}
public static int getStatusBarHeight(Context mContext) {
int result = 0;
int resourceId = mContext.getResources().getIdentifier("status_bar_height", "dimen", "android");
if (resourceId > 0) {
result = mContext.getResources().getDimensionPixelSize(resourceId);
}
return result;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
Android内容覆盖透明状态栏下实现全屏模式下带状态栏的效果
共86个文件
xml:38个
java:13个
png:10个
5星 · 超过95%的资源 需积分: 50 383 下载量 197 浏览量
2016-07-26
16:26:48
上传
评论 9
收藏 1.66MB ZIP 举报
温馨提示
做过一段状态栏颜色适配,纯色的基本在style直接设置就可以了, 不过最近效果图有一种效果要求 是在状态栏部分也显示内容部分, 像下面这样
资源推荐
资源详情
资源评论
收起资源包目录
TransparentStatusBarApp.zip (86个子文件)
TransparentStatusBarApp
.gitignore 105B
gradle
wrapper
gradle-wrapper.jar 52KB
gradle-wrapper.properties 231B
local.properties 442B
build.gradle 587B
gradlew.bat 2KB
TransparentStatusBarApp.iml 954B
gradlew 5KB
app
.gitignore 8B
build.gradle 1KB
proguard-rules.pro 676B
app.iml 11KB
libs
src
test
java
com
wsg
transparentstatusbarapp
ExampleUnitTest.java 338B
main
AndroidManifest.xml 742B
java
com
wsg
transparentstatusbarapp
BaseActivity.java 2KB
IBaseActivity.java 274B
BaseFragmentV4.java 5KB
testfragment
PersonFragment.java 850B
MessageFragment.java 850B
CityFragment.java 847B
HomeFragment.java 1KB
ResourceUtils.java 999B
IBaseFragment.java 421B
MainActivity.java 4KB
LoginActivity.java 1KB
res
values
styles.xml 596B
colors.xml 214B
strings.xml 89B
dimens.xml 216B
mipmap-xxhdpi
ic_launcher.png 8KB
layout
activity_main.xml 1014B
fragment_person.xml 504B
fragment_city.xml 497B
base_toolbar_layout.xml 555B
test.xml 504B
fragment_message.xml 502B
fragment_home.xml 534B
mipmap-xhdpi
a.jpg 6KB
icon_user_normal.png 2KB
icon_user_pressed.png 2KB
ic_launcher.png 5KB
bb.jpeg 188KB
bg_login.png 754KB
cc.jpg 10KB
dd.jpeg 118KB
icon_record_pressed.png 1KB
icon_record_normal.png 1KB
mipmap-hdpi
ic_launcher.png 3KB
drawable
tab_user_selector.xml 447B
tab_record_selector.xml 457B
mipmap-mdpi
ic_launcher.png 2KB
values-w820dp
dimens.xml 364B
mipmap-xxxhdpi
ic_launcher.png 10KB
androidTest
java
com
wsg
transparentstatusbarapp
ApplicationTest.java 374B
build
.gradle
2.10
taskArtifacts
cache.properties 31B
fileSnapshots.bin 3MB
outputFileStates.bin 20KB
cache.properties.lock 17B
fileHashes.bin 135KB
taskArtifacts.bin 75KB
build
gradle.properties 872B
.idea
libraries
iconpagerindicator_1_2.xml 621B
support_vector_drawable_24_1_0.xml 654B
butterknife_annotations_8_2_1.xml 592B
design_24_1_0.xml 739B
recyclerview_v7_24_1_0.xml 793B
support_v4_24_1_0.xml 917B
appcompat_v7_24_1_0.xml 775B
palette_v7_24_1_0.xml 589B
cardview_v7_24_1_0.xml 594B
animated_vector_drawable_24_1_0.xml 659B
logger_1_15.xml 572B
support_annotations_24_1_0.xml 523B
hamcrest_core_1_3.xml 526B
butterknife_8_2_1.xml 608B
junit_4_12.xml 477B
runConfigurations.xml 564B
workspace.xml 181KB
encodings.xml 159B
misc.xml 3KB
modules.xml 383B
.name 23B
copyright
profiles_settings.xml 76B
compiler.xml 686B
gradle.xml 739B
settings.gradle 16B
共 86 条
- 1
吴善革
- 粉丝: 8
- 资源: 13
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
前往页