gpt4 book ai didi

android - 在操作栏选项卡中添加 Page Curl

转载 作者:行者123 更新时间:2023-11-29 01:37:33 25 4
gpt4 key购买 nike

我在github上看到很多page curl相关的,我在下面提到了:

  1. harism
  2. openaphid
  3. mediafire
  4. MysticTreeGames

但一切都与图片有关。它对我不起作用。我需要在操作栏选项卡中实现页面 curl 。

例如:我发布了下面的示例图像,用于操作栏选项卡中的页面 curl 。

enter image description here

下面我发布了操作栏标签的代码:

MainActivity.java:

  public class MainActivity extends FragmentActivity implements
ActionBar.TabListener {

private ViewPager viewPager;
private TabsPagerAdapter mAdapter;
private ActionBar actionBar;
private MenuItem menuItem;

// Tab titles
private String[] tabs = { "Top Rated", "Games", "Movies" };

@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

viewPager = (ViewPager) findViewById(R.id.pager);
actionBar = getActionBar();
mAdapter = new TabsPagerAdapter(getSupportFragmentManager());

viewPager.setAdapter(mAdapter);
actionBar.setHomeButtonEnabled(false);
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_HOME
| ActionBar.DISPLAY_SHOW_TITLE | ActionBar.DISPLAY_SHOW_CUSTOM);

// Adding Tabs
for (String tab_name : tabs) {
actionBar.addTab(actionBar.newTab().setText(tab_name)
.setTabListener(this));
}

viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {

@Override
public void onPageSelected(int position) {
// on changing the page
// make respected tab selected
actionBar.setSelectedNavigationItem(position);
}

@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
}

@Override
public void onPageScrollStateChanged(int arg0) {
}
});

}

@Override
public void onTabReselected(Tab tab, FragmentTransaction ft) {
}

@Override
public void onTabSelected(Tab tab, FragmentTransaction ft) {
// on tab selected
// show respected fragment view
viewPager.setCurrentItem(tab.getPosition());
}

@Override
public void onTabUnselected(Tab tab, FragmentTransaction ft) {
}

}

activity_main.xml:

<?xml version="1.0" encoding="utf-8"?>

<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</android.support.v4.view.ViewPager>

TopRatedFragment.java:

public class TopRatedFragment extends Fragment {

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {

View rootView = inflater.inflate(R.layout.fragment_top_rated, container, false);

return rootView;
}
}

fragment_top_rated.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#fa6a6a"
android:orientation="vertical" >

<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:gravity="center"
android:text="Design Top Rated Screen"
android:textSize="20dp" />

</RelativeLayout>

已编辑: 我已经在 Action bar tabs 中尝试过了.但它是在 Activity 中工作而不是在 Fragments 中工作(Action bar tabs)。

如果我得到一些教程或 github 或一些示例或任何其他与在操作栏选项卡中实现页面 curl 相关的建议。这将对我有所帮助。谢谢。

最佳答案

如果您可以将希望分页 curl 的内容放入 View 实例中,那么如果将 View 渲染到位图上,则可能会使用任何使用位图实例的 curl 效果。可以使用这样的方法:

public Bitmap renderViewAsBitmap( View view ) {
view.setDrawingCacheEnabled( true );
view.buildDrawingCache();
return view.getDrawingCache();
}

或者如果您想在 curl 效果之前对图像进行更多操作:

public Bitmap renderViewAsBitmap( View view, int width, int height ) {
Bitmap bitmap = Bitmap.createBitmap( width, height, Bitmap.Config.ARGB_8888 );
Canvas canvas = new Canvas( bitmap );
view.draw( canvas );
return bitmap;
}

布局可以

我将尝试编写一个使用操作栏选项卡作为引用的测试用例,并将使用更多示例代码编辑此答案。

关于android - 在操作栏选项卡中添加 Page Curl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26986741/

25 4 0