我遇到了幾個頁面捲曲動畫以及viewflippers的例子。是否可以通過頁面捲曲動畫在視圖片的子項之間導航?我迄今爲止應用於viewflippers的動畫是非常基本的,比如滑入/滑出,我想知道是否可以完成/已經使用頁面捲曲動畫實現。頁面捲曲動畫在視圖翻轉視圖之間翻轉
1
A
回答
0
這裏有一個開源的android項目:http://code.google.com/p/android-page-curl/。 我在這裏找到另一個:https://github.com/harism/android_page_curl/。
但是,如果這就是你所要求的,那麼就沒有本地實現。
0
你需要導入一個模塊庫,這一點,從HERE
使用後下面的代碼: -
item_page.xml
<?xml version="1.0" encoding="utf-8"?>
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<ImageView
android:id="@+id/image"
android:layout_width="200dp"
android:layout_height="200dp"
android:layout_gravity="center"
android:layout_marginTop="10dp"
android:contentDescription="@string/app_name"
android:scaleType="centerCrop" />
<TextView
android:id="@+id/text"
android:padding="10dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMediumInverse"
android:textColor="@android:color/black" />
</LinearLayout>
</ScrollView>
activity_flipper_view_controller.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:flip="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/darker_gray"
android:paddingLeft="10dp"
android:text="@string/header"
android:textAppearance="@android:style/TextAppearance.Large" />
<com.aphidmobile.flip.FlipViewController
android:id="@+id/flip_view"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
flip:orientation="horizontal" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/darker_gray"
android:paddingLeft="10dp"
android:text="@string/footer"
android:textAppearance="@android:style/TextAppearance.Large" />
</LinearLayout>
FlipperAdapter.java
package pratiksha.com.pagecurlviewdemo;
import android.app.Activity;
import android.support.v7.app.AppCompatActivity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import java.util.List;
import pratiksha.com.pagecurlviewdemo.R;
/**
* Created by User(LPT-APR2015-02) on 11/7/2016.
*/
public class FlipperAdapter extends BaseAdapter {
private AppCompatActivity appCompatActivity;
private List<String> strings;
private int[] drawableIds = {R.mipmap.ic_launcher, R.mipmap.page1, R.mipmap.page2, R.mipmap.ic_launcher,
R.mipmap.page2, R.mipmap.page1, R.mipmap.page2, R.mipmap.ic_launcher,
R.mipmap.page1};
public FlipperAdapter(AppCompatActivity appCompatActivity, List<String> strings) {
super();
this.strings = strings;
this.appCompatActivity = appCompatActivity;
}
@Override
public int getCount() {
return strings.size();
}
@Override
public String getItem(int position) {
return strings.get(position);
}
@Override
public long getItemId(int position) {
return strings.indexOf(getItem(position));
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
LayoutInflater inflater = (LayoutInflater) appCompatActivity.getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
// If holder not exist then locate all view from UI file.
if (convertView == null) {
// inflate UI from XML file
convertView = inflater.inflate(R.layout.item_page, parent, false);
// get all UI view
holder = new ViewHolder(convertView);
// set tag for holder
convertView.setTag(holder);
} else {
// if holder created, get tag from view
holder = (ViewHolder) convertView.getTag();
}
holder.textView.setText(getItem(position));
holder.imageView.setImageResource(drawableIds[position]);
return convertView;
}
private static class ViewHolder {
private TextView textView;
private ImageView imageView;
public ViewHolder(View v) {
imageView = (ImageView)v.findViewById(R.id.image);
textView = (TextView) v.findViewById(R.id.text);
}
}
}
主要Activity.java
package pratiksha.com.pagecurlviewdemo;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import com.aphidmobile.flip.FlipViewController;
import java.util.ArrayList;
public class FlipperViewController extends AppCompatActivity {
private FlipViewController flipViewController;
private FlipperAdapter adapter;
private ArrayList<String> stringArrayList;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_flipper_view_controller);
flipViewController = (FlipViewController)findViewById(R.id.flip_view);
stringArrayList = new ArrayList<>();
readDataFromAssets();
//create and attach adapter to flipper view
adapter = new FlipperAdapter(this, stringArrayList);
flipViewController.setAdapter(adapter);
}
private void readDataFromAssets() {
for(int i=1;i<10;i++)
stringArrayList.add("Page Number "+i);
}
}
相關問題
- 1. 安卓視圖中的翻轉/頁面捲曲
- 2. 在Android上翻轉視圖動畫?
- 3. 頁面在CSS3中捲曲(翻轉)
- 4. 快速翻轉翻轉動畫整個視圖不是子視圖
- 5. Gmail列表視圖翻轉動畫
- 6. 在ipad中翻轉視圖
- 7. XAML頁面翻轉扭曲
- 8. Android翻轉圖像動畫
- 9. 在Android中翻頁/翻轉動畫?
- 10. MultipleDetailViews - 動畫之間的視圖轉換
- 11. 動畫翻轉?
- 12. Android-在兩幅圖像之間翻轉水平動畫
- 13. 翻轉動畫在前後圖像之間大小不一致
- 14. 在導航控制器的視圖中翻轉動畫
- 15. 如何推動視圖控制器與翻轉動畫
- 16. 核心動畫 - 頁面翻轉
- 17. 使用捲曲動畫滑動視圖
- 18. 翻轉視圖控制器僅第一次翻轉
- 19. 如何翻轉單個UIView(不翻轉父視圖)
- 20. 用自定義頁面捲曲動畫推視圖控制器
- 21. 翻轉視圖動畫無法正常工作
- 22. 如何添加翻轉動畫的子視圖?
- 23. Iphone使用塊動畫方法翻轉視圖
- 24. iOS - 翻轉動畫僅用於特定視圖
- 25. 翻譯視圖動畫跳轉到結尾
- 26. 從視圖導航,查看時進行翻轉動畫
- 27. Uitextfield視圖翻轉之間的「丟失」文本值
- 28. Android視圖傳呼機翻轉更多頁面
- 29. CSS翻轉動畫?
- 30. UICollectionViewCell翻轉動畫
嗨那麼你有沒有發現或者實現的答案嗎? – 2015-04-09 13:00:40