В моем файле XAML я использовал представление прокрутки для прокрутки вниз, но оно не работает. Я не могу найти ни одной проблемы, в которой я сделал пару дополнительных вещей. Одна из них: я добавляю pull для обновления nuget и использую его, и я создаю класс содержимого темы и я унаследовал его со страницей содержимого по умолчанию. другая команда на странице содержимого работает, но просмотр прокрутки не поддерживает
Вот мой файл Xaml
<views:BaseContentPage.Content>
<ScrollView BackgroundColor = "White">
<controls:PullToRefreshLayout x:Name = "PullToRefreshLayout" IsPullToRefreshEnabled = "True" RefreshCommand = "RefreshPatientDetailsPage">
<StackLayout>
// some code
</StackLayout>
</controls:PullToRefreshLayout>
</ScrollView>
</views:BaseContentPage.Content>
это страница с базовым контентом, которую я создаю
public abstract class BaseContentPage : ContentPage
{
public readonly BaseViewModel BaseViewModel;
protected bool IsNavigated;
public BaseContentPage(BaseViewModel baseViewModel)
{
BaseViewModel = baseViewModel;
}
protected abstract override void OnAppearing();
protected override void OnDisappearing()
{
IsNavigated = true;
}
}
Я думаю, что это представление прокрутки не работает из-за того, что я поставил NuGet, или это страница с базовым контентом.
для Android я использовал этот клиентский рендер
public class SortPaneListViewRendererAndroid : ListViewRenderer
{
public SortPaneListViewRendererAndroid(Context context) : base(context)
{
}
protected override void OnElementChanged(ElementChangedEventArgs<ListView> e)
{
base.OnElementChanged(e);
if (Control != null)
{
Control.VerticalScrollBarEnabled = false;
var listView = Control as Android.Widget.ListView;
listView.DividerHeight = 1;
}
}
}
я так сделал но не работает
Вы уверены, что у вас достаточно элементов управления для работы прокрутки?
да, когда я использую небольшой эмулятор, он показывает только часть этого, когда я использую эмулятор длинного экрана, он показывает весь контент
Вы уверены, что у вас нет рендереров, сопоставленных с вашим прокруткой?
у меня есть три пользовательских рендера, но только это применимо к этой странице
открытый класс SortPaneListViewRendererAndroid: ListViewRenderer { public SortPaneListViewRendererAndroid (контекст контекста): база (контекст) {} защищенное переопределение недействительным OnElementChanged (ElementChangedEventArgs <ListView> e) { base.OnElementChanged (e); if (Control != null) { Control.VerticalScrollBarEnabled = false; var listView = Управление как Android.Widget.ListView; listView.DividerHeight = 1; } } }
Давайте продолжить обсуждение в чате.
Хаким, ты хоть представляешь, что здесь пошло не так?
Я думаю, что у вас есть проблемы с вашим кодом, теперь я думал, что это будет рендерер, но я предполагаю, что это может быть что-то еще (пока не уверен, что именно)
да, я понимаю, что проблема в том, что на моем рендере есть прокрутка, и я снова вызвал прокрутку в XAML, это проблема, которую я решил, спасибо
пожалуйста, опубликуйте свое решение в качестве ответа и примите его, чтобы этот вопрос был помечен как ответ. Помогает другим искать вопросы, чтобы помочь, чтобы они не тратили время на вопросы, на которые есть ответы. Спасибо!
@ish1104 ish1104 Я добавил ответ, посмотри
Причина, по которой это происходит, заключается в том, что вы вкладываете прокручиваемые элементы управления. Удаление одного из них решит проблему.
можешь попробовать комментировать
controls:PullToRefreshLayout
и посмотреть, получится ли