标签: collectionview

EnumerableCollectionView到具有DataGrids的ListCollectionView

我有一个要尝试实现CustomSort的DataGrid。DataGrid ItemsSource始终返回的EnumerableCollectionView类型是不可排序的。我试图将EnumerableCollectionView转换为ListCollectionView,以便可以在其上实现CustomSort方法。基础集合是ObservableDictionary。如何将EnumerableCollectionView转换为ListCollectionView或从ItemsSource返回ListCollectionView?

c# sorting wpf datagrid collectionview

5
推荐指数
1
解决办法
1885
查看次数

UICollectionView在滚动时响应?

我有一个UICollectionView填充了一些单元格,我实现了方法- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath 这就像一个魅力,但它在滚动时不起作用.这是一个问题,因为滚动是非常敏感的,因此当我的意思是推单元格并调用方法时,我最终滚动没有结果.

所以我想知道如何解决这个问题,并想出了这个:

  • 我可以简单地设置方法在滚动时进行响应吗?
  • 如果不是 - 我可以简单地使它如此滚动只有你使用例如2个手指吗?分开两个动作.

谢谢你提前

xcode scroll objective-c collectionview uicollectionview

5
推荐指数
1
解决办法
671
查看次数

Emberjs - 一起使用CollectionView和ItemController

我有一个Category有很多的模型Documents.渲染个人时,Category我想documents在拖放可排序列表中列出所有子项.我还想双击任何个人document以允许该文档的内联编辑.

我让两个部分都在那里工作,但似乎无法弄清楚如何将它们合并在一起.

对于可排序列表,我使用自定义子类CollectionView来渲染documents,并在插入元素后调用html5sortable jquery插件.

对于内联编辑,我itemController为每个document渲染设置了一个.在DocumentController我维护的应用程序状态下编辑文档.

我正在寻找有关如何结合这两种方法的见解.我认为我需要的是一种itemController为每个人设置一个itemView的方法CollectionView.我已将相关代码放在下面.

App.SortableView = Ember.CollectionView.extend({
    tagName: 'ul',
    itemViewClass: 'App.SortableItemView', 

    didInsertElement: function(){
        var view = this;
        Ember.run.next(function() {
        $(view.get('element')).sortable();
        });
    }
});

App.SortableItemView = Ember.View.extend({
    templateName: 'sortable-item',
    doubleClick: function() {
        //This should ideally send 'editDocument' to controller
    }
});

App.DocumentController = Ember.ObjectController.extend({
    isEditing:false,
    editDocument: function () {
        this.set('isEditing', true);
    },
    finishedEditing: …
Run Code Online (Sandbox Code Playgroud)

javascript collectionview ember.js

5
推荐指数
1
解决办法
1657
查看次数

控制器中的旋转木马在我的集合视图中弄乱了大小

我在我的视图顶部有一个UICollectionView,还有一个ListView,当我点击ListView的一个项目时,它打开一个新的控制器,顶部和底部有两个(隐藏/未隐藏)栏,全屏带有Carousel的WebView.我正常使用水龙头或滑动,但在关闭我的新视图后(我在顶部栏中有一个X)它会显示上一个视图但突然收集大小的高度较小.¿我该如何防止这种情况?

我一直在寻找周围,这就像同样的问题,可是我的问题没有导航栏的区别,是导航栏下方的集合.

我已经花了好几个小时,我需要有人指点我.

编辑 在此输入图像描述

在此输入图像描述

在此输入图像描述

编辑 - 更新

我在我的第一个视图中有一个ListView,一个

[[NSNotificationCenter defaultCenter] postNotificationName: showFooMode....

我在另一个视图中有一个观察者,它是我整个应用程序的常见视图,因为它左边有菜单,它改变了右边的数据:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(showfooMode:) name:@"showFooMode" object:nil];
Run Code Online (Sandbox Code Playgroud)

和选择方法....

-(void)showfooMode:(NSNotification *)notification{
    NSLog(@"Show fooView in the GeneralView);
        FooItem *foo = [notification.object objectForKey:@"foo"];
        NSInteger currentIndex = [[notification.object objectForKey:@"foo"] integerValue];

        auxFooView = [notification.object objectForKey:@"delegate"];
      //  currentIndex = 20;

        fooView = [self.storyboard instantiateViewControllerWithIdentifier:@"fooView"];
        [fooView setNews:news];
        [fooView setDelegate:self];
        [fooView setCurrentIndex:currentIndex];
        fooView.view.alpha = 0;



        [self.view addSubview: magazineVC.view];
        [self addChildViewController:fooView];


        fooView.view.translatesAutoresizingMaskIntoConstraints = NO;

        NSDictionary *views = @{@"childview": fooView.view};
        [self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"|-0-[childview]-0-|" options:0 metrics:nil views:views]]; …
Run Code Online (Sandbox Code Playgroud)

xcode objective-c collectionview ios

5
推荐指数
1
解决办法
220
查看次数

水平滚动集合视图单元格内的 TableView

您好,我在水平滚动集合视图中有一个 tableview,如下所示。

http://recordit.co/pUyTbuOPsn

TableView 单元格由 tvdatasource 正确填充,但由于 TableView 嵌入在 CollectionViewCell 方法中,例如 didselectitematindexpath 不会被调用。

如何使用控制器和集合视图单元正确设置 tableviewdelegate 方法,以便委托方法可以汇集到顶部控制器?

它很容易填充,但调用方法是我需要帮助的:D 这里是下面的代码

我还将在整个应用程序中重复使用这种模式。许多 tableviews 不会是静态的,数据将从 API 动态提供。

class AddItemViewController: UIViewController, 
UICollectionViewDelegate, UICollectionViewDataSource, 
UICollectionViewDelegateFlowLayout
    {

@IBOutlet weak var mainCollectionView: UICollectionView!
var currentCellPosition = 0

override func viewDidLoad() {
    super.viewDidLoad()
    navigationController?.navigationBar.tintColor = UIColor.leafBlack()

    automaticallyAdjustsScrollViewInsets = false
    mainCollectionView.dataSource = self
    mainCollectionView.delegate = self

    mainCollectionView.register(UICollectionViewCell.self, forCellWithReuseIdentifier: "Cell")
    mainCollectionView.register(AddItemDetailsCollectionViewCell.self, forCellWithReuseIdentifier: "DetailsCell")
    mainCollectionView.register(AddItemPhotoCollectionViewCell.self, forCellWithReuseIdentifier: "PhotoCell")
    mainCollectionView.register(AddItemShippingCollectionViewCell.self, forCellWithReuseIdentifier: "ShippingCell")

    if let flowLayout = mainCollectionView.collectionViewLayout as? UICollectionViewFlowLayout {
        flowLayout.scrollDirection = .horizontal
        flowLayout.minimumLineSpacing …
Run Code Online (Sandbox Code Playgroud)

tableview collectionview swift

5
推荐指数
0
解决办法
628
查看次数

如何将可观察集合绑定到 xamarin 中的 flexlayout?

我需要将 ObservableCollection 视图绑定到 FlexLayout(因为我需要自定义外观)。当我将项目绑定到 CollectionView 时,它们的外观与我在 FlexLayout 中直接使用 grid 时获得的外观不同,例如:

当然,这按预期工作,但没有约束力。

<FlexLayout Grid.Row="5"
            Grid.Column="0"
            Margin="10,15,10,5"
            HorizontalOptions="FillAndExpand"
            VerticalOptions="StartAndExpand">
    <Grid Margin="0,0,0,6"
          HeightRequest="20">
        <Frame Padding="2"
               BackgroundColor="#f1f1f1"
               CornerRadius="5">
            <Label Grid.Row="0"
                   Grid.Column="1"
                   FontSize="11"
                   Text="some text"
                   TextColor="DarkGray" />
        </Frame>
    </Grid>
</FlexLayout>
Run Code Online (Sandbox Code Playgroud)

这里一切都绑定正常,但外观就像一个 ListView:

在后面的代码中:

xEspecialidades.ItemsSource = StringCollection;
Run Code Online (Sandbox Code Playgroud)

在 XAML 中:

xEspecialidades.ItemsSource = StringCollection;
Run Code Online (Sandbox Code Playgroud)

我发现这个线程https://github.com/xamarin/Xamarin.Forms/issues/8234 但无法使其工作。Visual Studio 一直说找不到 FlexItemsLayout。有没有办法做我想做的事?

data-binding observablecollection collectionview xamarin

5
推荐指数
1
解决办法
1050
查看次数

CollectionView Compositional Layout with Multiple Data Types

So I've just recently playing around with Compositional Layouts with Diffable DataSource and so far loving it. But all of my endeavors have included a single type of Data Item.

What I'm trying to achieve is have two different types of List, say Car and Airplane

So far what I've done is created the layouts, created an Enum

enum DataItem: Hashable{
        case cars(Car)
        case airplane(Airplane)
 }
Run Code Online (Sandbox Code Playgroud)

And dataSource initialization:

func configureDataSource(){
        dataSource = UICollectionViewDiffableDataSource
        <Section, DataItem>(collectionView: collectionView) {
            (collectionView: UICollectionView, …
Run Code Online (Sandbox Code Playgroud)

collectionview diffabledatasource

5
推荐指数
1
解决办法
648
查看次数

Xamarin Forms - 在 CollectionView 中拖放(渲染器)

如何在 Xamarin Forms 的 CollectionView 中实现简单的拖放功能?不使用任何第 3 方 NUGET 包。下面的代码是一个简单的集合视图,但现在我需要渲染它...我如何渲染和实现拖放以重新排序数字?在此输入图像描述

沙姆尔

<CollectionView ItemsSource="{Binding Stores}"
                 x:Name="CV"
                         VerticalOptions="Center"   
                         HorizontalOptions="Center"   
                         BackgroundColor="#F9F9F9"  
                         Margin="10,100,10,10">
    <CollectionView.ItemsLayout>
        <GridItemsLayout Orientation="Vertical" Span="3"/>
    </CollectionView.ItemsLayout>
    <CollectionView.ItemTemplate>
        <DataTemplate>
            <StackLayout Padding="10" HorizontalOptions="CenterAndExpand">
                <Frame BorderColor="LightGray" HasShadow="True" Padding="5" HorizontalOptions="CenterAndExpand">
                    <Grid Padding="5" ColumnSpacing="0" RowSpacing="0" Margin="2" HorizontalOptions="StartAndExpand">
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="Auto"/>
                        </Grid.ColumnDefinitions>
                        <Label Grid.Column="0" Text="{Binding Id}" HorizontalOptions="CenterAndExpand" HorizontalTextAlignment="Center" VerticalOptions="CenterAndExpand" FontAttributes="Bold"/>
                    </Grid>
                </Frame>
            </StackLayout>
        </DataTemplate>
    </CollectionView.ItemTemplate>
</CollectionView>
Run Code Online (Sandbox Code Playgroud)

.CS文件

public partial class MainPage : ContentPage
{
    public List<Store> storelist;

    public MainPage()
    {
        InitializeComponent();
        storelist = new List<Store>();
        BindingContext = this; …
Run Code Online (Sandbox Code Playgroud)

collectionview xamarin.forms

5
推荐指数
1
解决办法
1086
查看次数

Xamarin CollectionView 缓慢滚动

我有一个显示聊天消息的集合视图,它有 10 个可能的数据模板。每个数据模板都包含一个 flexlayout(因为我需要在左侧或右侧水平对齐它,就像聊天气泡一样),在这些 flexlayouts 中,我们有一个单独的网格,可以显示图像、标签、地图或媒体播放器。它加载非常快,但滚动时非常慢。我试图取消 flexlayout,但网格不遵守我需要的 LayoutOptions End/Start,然后我用填充屏幕(水平)的 ContentView 交换了 FlexLayout,我能够水平对齐它的孩子。我注意到此更改没有性能改进,甚至可能变得更糟。此外,我已经阅读并按照优化应用程序性能的建议进行了更改,但似乎还不够。

下面我有我的collectionview标签和一个数据模板的例子,其他的非常相似,几乎没有区别。我的疑问是如何改进这种情况?

集合视图

<CollectionView x:Name="ChatCollectionView" SelectionMode="None" HorizontalScrollBarVisibility="Never" VerticalScrollBarVisibility="Always" ItemsUpdatingScrollMode="KeepLastItemInView" ItemTemplate="{StaticResource MsgTemplateSelector}" Margin="5,0,5,0" />
Run Code Online (Sandbox Code Playgroud)

数据模板之一

<DataTemplate x:Key="DefaultMsg">
    <FlexLayout Direction="Row" MinimumWidthRequest="50" JustifyContent="{Binding MsgAlign}">
            <Grid Padding="0" Margin="0,10,0,0">
                <Grid.RowDefinitions>
                    <RowDefinition />
                    <RowDefinition Height="20"></RowDefinition>
                </Grid.RowDefinitions>

                <BoxView Grid.Column="0" Grid.ColumnSpan="1" Grid.Row="0" Grid.RowSpan="2" CornerRadius="5" BackgroundColor="{Binding MsgBg}" />
                <Label Grid.Row="0" Grid.Column="0" Text="{Binding msg}" TextColor="Black" />

                <Grid Grid.Row="1" Grid.Column="0">
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="*" />
                        <ColumnDefinition Width="20" />
                    </Grid.ColumnDefinitions>

                    <Label Grid.Column="0" Grid.Row="0" TextColor="DarkGray" FontSize="12">
                        <Label.FormattedText>
                            <FormattedString>
                                <Span Text="&#xf017; "> …
Run Code Online (Sandbox Code Playgroud)

c# performance collectionview xamarin xamarin.forms

5
推荐指数
1
解决办法
2431
查看次数

iOS 15 模拟器 - 滚动时集合视图单元格渲染损坏...?

我在最新的 Xcode 13 上运行我的应用程序,在模拟器中的 iOS 15 上运行我的应用程序,当水平滚动表行(包含集合视图)时会产生奇怪的渲染错误/问题。这只是视觉上的。单元格上的触摸点都正常,我可以用手指滚动渲染无法滚动的地方...

水平滚动会破坏渲染

这是一个集合视图表...

另外,如果我垂直滚动表格,任何渲染故障都会得到解决......直到我再次从左向右滚动。

rendering simulator collectionview ios xcode13

5
推荐指数
1
解决办法
862
查看次数