Git Product home page Git Product logo

flutter-bidirectional_scrollview_plugin's Introduction

bidirectional_scroll_view

This package for Flutter allows you to scroll in both horizontal and vertical directions.

It works as follows:

    new BidirectionalScrollViewPlugin(child: <replace with your own widget>)

Support

Please file issues and feature requests.

flutter-bidirectional_scrollview_plugin's People

Contributors

efortuna avatar sethladd avatar the-redhat avatar toufikzitouni avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

flutter-bidirectional_scrollview_plugin's Issues

it doesn't allow setState

it doesn't allow setState, if I replaced BidirectionalScrollViewPlugin with SingleChildScrollView setState works fine but the other way round doesn't work

Fix dependencies in pubspec.yaml.

Running flutter packages pub upgrade failed with the following output:

ERR: The current Dart SDK version is 2.2.1-dev.0.0.flutter-7c70ab1817.

Because bidirectional_scroll_view requires SDK version >=1.19.0 <2.1.0, version solving failed.

Can you help me fix this please?

Add scroll bars

I'd like to see scroll bars to give the user an idea where they are.

These would be optional, for both x and y axis.

bidirectional_scroll_view failed build APK in flutter

bidirectional_scroll_view: ^0.1.1
bidirectional_scroll_view failed build APK in flutter.
error message:
C:\src\flutter\bin\flutter.bat --no-color build apk
You are building a fat APK that includes binaries for android-arm, android-arm64, android-x64.
If you are deploying the app to the Play Store, it's recommended to use app bundles or split the APK to reduce the APK size.
To generate an app bundle, run:
flutter build appbundle --target-platform android-arm,android-arm64,android-x64
Learn more on: https://developer.android.com/guide/app-bundle
To split the APKs per ABI, run:
flutter build apk --target-platform android-arm,android-arm64,android-x64 --split-per-abi
Learn more on: https://developer.android.com/studio/build/configure-apk-splits#configure-abi-split
Running Gradle task 'assembleRelease'...
Removed unused resources: Binary resource data reduced from 44KB to 35KB: Removed 20%

FAILURE: Build failed with an exception.

  • What went wrong:

Execution failed for task ':bidirectional_scroll_view:verifyReleaseResources'.

A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade

Android resource linking failed

 C:\Users\User\.gradle\caches\transforms-2\files-2.1\0a271e99b6771ad4a84318244d532fb7\core-1.0.0\res\values\values.xml:57:5-88:25: AAPT: error: resource android:attr/fontStyle not found.



 C:\Users\User\.gradle\caches\transforms-2\files-2.1\0a271e99b6771ad4a84318244d532fb7\core-1.0.0\res\values\values.xml:57:5-88:25: AAPT: error: resource android:attr/font not found.



 C:\Users\User\.gradle\caches\transforms-2\files-2.1\0a271e99b6771ad4a84318244d532fb7\core-1.0.0\res\values\values.xml:57:5-88:25: AAPT: error: resource android:attr/fontWeight not found.



 C:\Users\User\.gradle\caches\transforms-2\files-2.1\0a271e99b6771ad4a84318244d532fb7\core-1.0.0\res\values\values.xml:57:5-88:25: AAPT: error: resource android:attr/fontVariationSettings not found.



 C:\Users\User\.gradle\caches\transforms-2\files-2.1\0a271e99b6771ad4a84318244d532fb7\core-1.0.0\res\values\values.xml:57:5-88:25: AAPT: error: resource android:attr/ttcIndex not found.
  • Try:

Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

BUILD FAILED in 38s
Running Gradle task 'assembleRelease'... 38.8s
The built failed likely due to AndroidX incompatibilities in a plugin. The tool is about to try using Jetfier to solve the incompatibility.
Building plugin bidirectional_scroll_view...
Running Gradle task 'assembleAarRelease'... 2.2s

BUILD FAILED

Total time: 2.061 secs

FAILURE: Build failed with an exception.

  • What went wrong:
    A problem occurred configuring root project 'bidirectional_scroll_view'.

SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

The plugin bidirectional_scroll_view could not be built due to the issue above.
Process finished with exit code 1

Passing screen size ?

Hi,

I was looking for something you did! Thanks!

I tested it without a problem but now, in my case, i'm trying to display something which needs to be related to the screen size and I can't figuring out how I can make it..

Can you make a simple example for passing argument in the build() ?

In the initState, we can't have the screen size because it's not already build :/

Thanks for your help and for your good work!

Regards

Why it will effect left? Is it a bug? how to keey the left immobility

2019-04-21_00-11-30

import 'package:bidirectional_scroll_view/bidirectional_scroll_view.dart';
import 'package:flutter/material.dart';

void main() {
  runApp(new MyApp());
}

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => new _MyAppState();
}

class _MyAppState extends State<MyApp> {
  BidirectionalScrollViewPlugin _plugin;

  @override
  void initState() {
    super.initState();
    _plugin = new BidirectionalScrollViewPlugin(
      child: _buildWidgets(),
      velocityFactor: 2.0,
    );

    //_plugin.offset = new Offset(10.0, 10.0); // use this method to set a new offset where appropriate
  }

  @override
  Widget build(BuildContext context) {
    return new MaterialApp(
      home: new Scaffold(
        appBar: new AppBar(
          title: new Text('Bidirectional ScrollView Plugin'),
        ),
        body: new Center(
            child: Row(
          children: [
            Expanded(
              flex: 1,
              child: Container(
                color: Colors.red,
                width: 100,
                height: 100,
              ),
            ),
            Expanded(
              flex: 1,
              child: _plugin,
            )
          ],
        )),
      ),
    );
  }

  Widget _buildWidgets() {
    List<Widget> list = new List();

    for (int i = 0; i < 1024; i++) {
      list.add(new Container(
        padding: new EdgeInsets.all(5.0),
        color: Colors.white,
        height: 80.0,
        width: 120.0,
        child: new Container(
          color: Colors.grey,
          child: Text("$i"),
        ),
      ));
    }

    return new Row(
      children: [
        new Column(
          children: list.map((widget) {
            return widget;
          }).toList(),
        ),
      ],
    );
  }
}

Does not work with latest Flutter

I've just copy paste the tutorial given from https://pub.dev/packages/bidirectional_scroll_view

Got this instead when trying to run it.

======== Exception caught by rendering library =====================================================
The following assertion was thrown during performResize():
Vertical viewport was given unbounded height.

Viewports expand in the scrolling direction to fill their container. In this case, a vertical viewport was given an unlimited amount of vertical space in which to expand. This situation typically happens when a scrollable widget is nested inside another scrollable widget.

If this widget is always nested in a scrollable widget there is no need to use a viewport because there will always be enough vertical space for the children. In this case, consider using a Column instead. Otherwise, consider using the "shrinkWrap" property (or a ShrinkWrappingViewport) to size the height of the viewport to the sum of the heights of its children.

Module 'bidirectional_scroll_view' not found iOS Archive Release

bidirectional_scroll_view: ^0.1.1

  • Flutter 1.22.3
  • stable

Failure when archive ios release:

Runner/GeneratedPluginRegistrant.m:10:9: Module 'bidirectional_scroll_view' not found

Screen Shot 2021-01-08 at 1 54 56 PM

Screen Shot 2021-01-08 at 1 48 20 PM

#if __has_include(<bidirectional_scroll_view/BidirectionalScrollViewPlugin.h>) #import <bidirectional_scroll_view/BidirectionalScrollViewPlugin.h> #else @import bidirectional_scroll_view; #endif

I'am having this issue when archive to ios release. It's some module is not working and I've found same error when release apk on android.

Add pinch/zoom

I'd like to be able to zoom in and out using the pinch gesture.

This should be optional, and I should be able to specify a range for the zoom.

Performance is significantly slower than listview

Hi, thanks for a nice library.
it is really easy to use and makes my code very clean and short.
however I find it quite laggy during acroll for both side for records around 1000 and columns around 20, this symptom does not exist in listview.
Any suggestion please?

About Flutter2.0 and NullSafety

Non-nullable instance field '_state' must be initialized.
001

I try to keep your code here, and then just make relevant adjustments for NullSafety, maybe you can refer to it.

Adjustment of bidirectional_scroll_view.dart
006
007

Adjustment of main.dart
008

If you need it, I can also provide PullRequest.

Please upgrade flutter SDK version

Please upgrade flutter SDK version.

The current Dart SDK version is 2.1.0-dev.1.0.flutter-ccb16f7282.

Because bidirectional_scroll_view 0.0.5 requires SDK version <2.0.0 and no versions of bidirectional_scroll_view match >0.0.5 <0.1.0, bidirectional_scroll_view ^0.0.5 is forbidden.
So, because MyProject1 depends on bidirectional_scroll_view ^0.0.5, version solving failed.
pub get failed (1)

thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.