Skip to content

Commit

Permalink
commit 添加一些demo说明,包括fragment里如何调用等
Browse files Browse the repository at this point in the history
  • Loading branch information
binIoter committed Aug 24, 2016
1 parent 48f0d6e commit d390c59
Show file tree
Hide file tree
Showing 25 changed files with 683 additions and 138 deletions.
19 changes: 17 additions & 2 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,28 @@
android:theme="@style/Theme.AppCompat.Light.NoActionBar">
<activity
android:name="com.demo.aty.SimpleGuideViewActivity"
android:label="@string/title_activity_simple_guide_view">
android:screenOrientation="portrait" />
<activity
android:name="com.demo.aty.HomeActivity"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.demo.aty.FullActivity"
android:screenOrientation="portrait" />
<activity
android:name="com.demo.aty.FragActivity"
android:screenOrientation="portrait" />
<activity
android:name="com.demo.aty.ViewActivity"
android:screenOrientation="portrait" />
<activity
android:name="com.demo.aty.MyListActivity"
android:screenOrientation="portrait" />
</application>

</manifest>
</manifest>
Binary file added app/src/main/assets/img1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added app/src/main/assets/img2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added app/src/main/assets/img3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added app/src/main/assets/img4.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added app/src/main/assets/img5.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
23 changes: 23 additions & 0 deletions app/src/main/java/com/demo/aty/FragActivity.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package com.demo.aty;

import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import com.demo.guide.R;

public class FragActivity extends FragmentActivity {

@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_frag);
switch (getIntent().getIntExtra("fragmentId", -1)) {
case 0:
getSupportFragmentManager().beginTransaction().add(R.id.frame, new MyFragment()).commit();
break;
case 1:
getSupportFragmentManager().beginTransaction().add(R.id.frame, new MyFragment2()).commit();
break;
default:
getSupportFragmentManager().beginTransaction().add(R.id.frame, new MyFragment()).commit();
}
}
}
55 changes: 55 additions & 0 deletions app/src/main/java/com/demo/aty/FullActivity.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
package com.demo.aty;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import com.blog.www.guideview.Guide;
import com.blog.www.guideview.GuideBuilder;
import com.demo.component.SimpleComponent;
import com.demo.guide.R;

public class FullActivity extends Activity {

private Button header_imgbtn;
Guide guide;

@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_simple_guide_view);
header_imgbtn = (Button) findViewById(R.id.header_imgbtn);
header_imgbtn.setOnClickListener(new View.OnClickListener() {
@Override public void onClick(View view) {
Toast.makeText(FullActivity.this, "show", Toast.LENGTH_SHORT).show();
}
});
header_imgbtn.post(new Runnable() {
@Override public void run() {
showGuideView();
}
});
}

public void showGuideView() {
GuideBuilder builder = new GuideBuilder();
builder.setTargetView(header_imgbtn)
.setAlpha(150)
.setHighTargetCorner(20)
.setHighTargetPadding(10)
.setOverlayTarget(false)
.setOutsideTouchable(false);
builder.setOnVisibilityChangedListener(new GuideBuilder.OnVisibilityChangedListener() {
@Override public void onShown() {
}

@Override public void onDismiss() {
}
});

builder.addComponent(new SimpleComponent());
guide = builder.createGuide();
guide.setShouldCheckLocInWindow(true);
guide.show(this);
}
}
52 changes: 52 additions & 0 deletions app/src/main/java/com/demo/aty/HomeActivity.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
package com.demo.aty;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import com.demo.guide.R;

public class HomeActivity extends Activity implements View.OnClickListener {
private Button mBtnAty, mBtnFrag, mBtnList, mBtnView, mBtnFragView, mBtnMore;

@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
mBtnAty = (Button) findViewById(R.id.btn_aty);
mBtnFrag = (Button) findViewById(R.id.btn_frag);
mBtnFragView = (Button) findViewById(R.id.btn_frag_view);
mBtnList = (Button) findViewById(R.id.btn_list);
mBtnMore = (Button) findViewById(R.id.btn_more);
mBtnView = (Button) findViewById(R.id.btn_view);
mBtnAty.setOnClickListener(this);
mBtnFrag.setOnClickListener(this);
mBtnFragView.setOnClickListener(this);
mBtnList.setOnClickListener(this);
mBtnMore.setOnClickListener(this);
mBtnView.setOnClickListener(this);
}

@Override public void onClick(View view) {
switch (view.getId()) {
case R.id.btn_aty:
startActivity(new Intent(HomeActivity.this, FullActivity.class));
break;
case R.id.btn_frag:
startActivity(new Intent(HomeActivity.this, FragActivity.class).putExtra("fragmentId",0));
break;
case R.id.btn_frag_view:
startActivity(new Intent(HomeActivity.this, FragActivity.class).putExtra("fragmentId",1));
break;
case R.id.btn_list:
startActivity(new Intent(HomeActivity.this, MyListActivity.class));
break;
case R.id.btn_more:
startActivity(new Intent(HomeActivity.this, SimpleGuideViewActivity.class));
break;
case R.id.btn_view:
startActivity(new Intent(HomeActivity.this, ViewActivity.class));
break;
}
}
}
73 changes: 73 additions & 0 deletions app/src/main/java/com/demo/aty/MyFragment.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
package com.demo.aty;

import android.os.Build;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewTreeObserver;
import android.widget.LinearLayout;
import com.blog.www.guideview.Guide;
import com.blog.www.guideview.GuideBuilder;
import com.demo.component.MutiComponent;
import com.demo.guide.R;

public class MyFragment extends Fragment {
private LinearLayout ll_nearby;
Guide guide;

@Nullable @Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container,
@Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.activity_simple_guide_view, container, false);
ll_nearby = (LinearLayout) view.findViewById(R.id.ll_nearby);
return view;
}

@Override public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
getActivity().getWindow()
.getDecorView()
.getViewTreeObserver()
.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override public void onGlobalLayout() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
getActivity().getWindow()
.getDecorView()
.getViewTreeObserver()
.removeOnGlobalLayoutListener(this);
} else {
getActivity().getWindow()
.getDecorView()
.getViewTreeObserver()
.removeGlobalOnLayoutListener(this);
}
showGuideView();
}
});
}

public void showGuideView() {
GuideBuilder builder = new GuideBuilder();
builder.setTargetView(ll_nearby)
.setAlpha(150)
.setHighTargetCorner(20)
.setHighTargetPadding(10)
.setOverlayTarget(false)
.setOutsideTouchable(false);
builder.setOnVisibilityChangedListener(new GuideBuilder.OnVisibilityChangedListener() {
@Override public void onShown() {
}

@Override public void onDismiss() {
}
});

builder.addComponent(new MutiComponent());
guide = builder.createGuide();
guide.setShouldCheckLocInWindow(true);
guide.show(getActivity());
}
}
75 changes: 75 additions & 0 deletions app/src/main/java/com/demo/aty/MyFragment2.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
package com.demo.aty;

import android.os.Build;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewTreeObserver;
import android.widget.LinearLayout;
import com.blog.www.guideview.Guide;
import com.blog.www.guideview.GuideBuilder;
import com.demo.component.MutiComponent;
import com.demo.guide.R;

public class MyFragment2 extends Fragment {
private LinearLayout ll_view_group, ll_nearby;
Guide guide;

@Nullable @Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container,
@Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.activity_simple_guide_view, container, false);
ll_view_group = (LinearLayout) view.findViewById(R.id.ll_view_group);
ll_nearby = (LinearLayout) view.findViewById(R.id.ll_nearby);
return view;
}

@Override public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
getActivity().getWindow()
.getDecorView()
.getViewTreeObserver()
.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override public void onGlobalLayout() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
getActivity().getWindow()
.getDecorView()
.getViewTreeObserver()
.removeOnGlobalLayoutListener(this);
} else {
getActivity().getWindow()
.getDecorView()
.getViewTreeObserver()
.removeGlobalOnLayoutListener(this);
}
showGuideView();
}
});
}

public void showGuideView() {
GuideBuilder builder = new GuideBuilder();
builder.setTargetView(ll_nearby)
.setFullingViewId(R.id.ll_view_group)
.setAlpha(150)
.setHighTargetCorner(20)
.setHighTargetPadding(10)
.setOverlayTarget(false)
.setOutsideTouchable(false);
builder.setOnVisibilityChangedListener(new GuideBuilder.OnVisibilityChangedListener() {
@Override public void onShown() {
}

@Override public void onDismiss() {
}
});

builder.addComponent(new MutiComponent());
guide = builder.createGuide();
guide.setShouldCheckLocInWindow(true);
guide.show(getActivity());
}
}
Loading

0 comments on commit d390c59

Please sign in to comment.