我想在Xamarin/Android項目中使用C#端口TwoDScrollView。ImageView比例和寬度/高度變化
它工作正常。我們正在添加縮放手勢(我們正在顯示可由用戶放大/縮小的圖像)。這工作也很好。
問題是,TwoDScrollView依賴於ImageView.Width和ImageView.Height來進行計算,並且不會更改 - 在縮放後嘗試滾動時會導致問題。在調整,我們正在做的:
fullscreenImageView.ScaleX = _scaleFactor;
fullscreenImageView.ScaleY = _scaleFactor;
var lp = fullscreenImageView.LayoutParameters;
lp.Width = (int) (fullscreenImageView.Drawable.IntrinsicWidth * _scaleFactor);
lp.Height = (int) (fullscreenImageView.Drawable.IntrinsicHeight * _scaleFactor);
fullscreenImageView.RequestLayout(); //the request layout was just a test,
// it doesn't work either way
我們可以看到如何layoutparameter寬度和高度的變化,但View.Width和View.Height永不改變......它始終是我們加載的原始圖像的尺寸。我們如何才能做出更新? (一種解決方案是縮放位圖並將其分配給imageview,但這很糟糕並且速度很慢)。
謝謝。
這實際上改變了大小。謝謝。 – rufo