मैं इंटरैक्टिव व्यूअर के अंदर एक छवि ज़ूम कर रहा हूं, इंटरेक्टिव व्यूअर कंटेनर का एक बच्चा है, एक छवि ज़ूम करने के बाद, कंटेनर में कुछ ऊंचाई सेट करें, व्यूपोर्ट में विशेष स्थिति, मैं एक छवि को स्क्रॉल और ज़ूम नहीं कर सकता


 class MyApp extends StatelessWidget {
  static const String _title = 'Flutter Code Sample';

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: _title,
      home: Scaffold(
        appBar: AppBar(title: const Text(_title)),
        body: Zoom(),
      ),
    );
  }
}
class Zoom extends StatefulWidget
{
  @override
  MyStatelessWidget createState()=> MyStatelessWidget();
}
/// This is the stateless widget that the main application instantiates.
class MyStatelessWidget extends State<Zoom> {


  @override
  Widget build(BuildContext context) {
    return Center(
child:Container(height: 300,
      child: InteractiveViewer(

       scaleEnabled: true,maxScale: 4.0,
        child: Center(
         child:Container( child:Image.asset('Assets/Java-001.jpg',fit: BoxFit.cover,alignment: Alignment.center,)),
      ),
    )));
  }
}


मैं यह मुश्किल कैसे सुलझाऊँ?

1
Allwin Vinosh 15 सितंबर 2020, 15:54
यह उत्तर मदद कर सकता है: stackoverflow.com/a/69350213/171933
 – 
Johannes Fahrenkrug
27 सितंबर 2021, 19:39

2 जवाब

सबसे बढ़िया उत्तर

इन तर्कों को InteractiveViewer विजेट में जोड़ने का प्रयास करें:

minScale: 0.1,
maxScale: 4.0,
boundaryMargin: const EdgeInsets.all(double.infinity),
constrained: false,
2
Roslan Amir 16 अक्टूबर 2021, 08:04

अगर आपका विजेट व्यूपोर्ट से बड़ा है, तो आपको constrained को false पर सेट करना होगा।

विवश: अगर गलत पर सेट किया जाता है, तो बच्चे को अनंत दिया जाएगा बाधाएं यह अक्सर तब उपयोगी होता है जब बच्चे को इंटरएक्टिव व्यूअर से बड़ा होना चाहिए।

InteractiveViewer(
  constrained: false, // Set it to false.
  child: YourContainer(...),
)
0
iDecode 30 जून 2021, 15:39