回答
也許是來不及回答,但我發現這個問題,尋找別的東西的時候。
我做了一個自定義畫廊和重寫getChildStaticTransformation()並添加一些其他的東西。
下面是一個例子
private int centerOfGallery;
public CustomGallery(Context context) {
super(context);
init();
}
public CustomGallery(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public CustomGallery(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
init();
}
private void init() {
setStaticTransformationsEnabled(true);
}
private int getCenterWidthOfView(View child) {
return child.getLeft() + child.getWidth()/2;
}
@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
super.onSizeChanged(w, h, oldw, oldh);
centerOfGallery = (w - getPaddingLeft() - getPaddingRight())/2 + getPaddingLeft();
}
@Override
protected boolean getChildStaticTransformation(View child, Transformation t) {
mCamera.save();
final Matrix matrix = t.getMatrix();
final int centerWidthOfChild = getCenterWidthOfView(child);
final int delta = centerOfGallery - centerWidthOfChild;
final float scale = (float)(maxScale - Math.abs(delta) * 0.5f/centerOfGallery);
mCamera.getMatrix(matrix);
matrix.preScale(scale, scale);
matrix.preTranslate(-1, -1);
matrix.postTranslate(1, 1);
mCamera.restore();
if (version >= 15) { // For Jelly Bean hack
child.invalidate();
}
return true;
}
其中 maxScale是你想要的最大規模的選擇項(例如1.5F)
之後,要小心在畫廊時,項目之間的間距縮放它們。如有必要,您可以使用setSpacing()。
希望這有助於
勒布
什麼是mCamera它是一個畫布? – Abdullah 2013-06-06 21:57:52
我仍然看到一些問題,如重疊的項目,但這是迄今爲止我遇到的最好的解決方案。 – 2013-08-16 23:18:21
@Abdullah mCamera是android.graphics.Camera – 2013-08-16 23:18:47
我認爲它不適用,因爲縮放是基於觸摸事件完成的。在我的casa中,我想在投擲時選擇項目時應用縮放,所以基本上縮放應該在做出選擇時自動完成。有任何想法嗎? – lblasa 2011-04-27 16:28:46
我dnt很多,你可以參考這個&執行在一甩,sry – 2011-04-27 16:33:58
- 1. 在圖庫中縮放選定的圖像
- 2. JIT圖上的替代縮放選項
- 3. Safari不縮放項目符號圖像
- 4. 將Android圖像縮放到Listview項目
- 5. Spinner選定項目的縮寫形式
- 6. 圖庫中的Android圖像縮放
- 7. 圖庫:所選項目中的效果
- 8. 在WinForm項目和許可選項中放置數據庫
- 9. 縮放CCMenu中的CCMenuItemSprite項目
- 10. 縮放Listbox/SurfaceListbox中的項目WPF
- 11. Android - 縮放問題項目
- 12. 縮放問題RecyclerView項目
- 13. ASP.Net的圖像縮放庫
- 14. Android的 - 圖像縮放庫
- 15. PDF渲染器庫中的縮放選項
- 16. 縮放圖庫在Android中觸摸圖片或如何在圖庫中實現圖片縮放動畫?
- 17. Android如何使用BitmapFactory選項縮放圖像選項
- 18. 如何在共享首選項中保存縮放位圖?
- 19. Android圓形圖庫或帶有放大和縮小選項的列表視圖
- 20. QML/QtQuick2 Anchor項目在縮放圖像上的靜態位置
- 21. 在光環中的縮放圖像中縮放圖像
- 22. 對話框中的圖像縮放選項android
- 23. 史密斯圖表中的縮放選項
- 24. 縮放和旋轉圖像,iframe中的選項
- 25. jqChart中有縮放選項嗎?
- 26. knitRBootstrap:縮放選項,縮略圖大小和打印尺寸
- 27. Android縮放圖庫幫助
- 28. 刪除圖庫縮放
- 29. Android圖庫縮放變焦
- 30. 在Android中縮放圖庫的中心圖像
你想出了一個解決這個問題? – schlingel 2012-02-01 16:03:38