@xamarin_russia

Страница 497 из 619
Андрей Родионович
02.08.2018
13:44:23
На формсах аппа моя)

Dmitriy
02.08.2018
13:45:09
?

Vlad
02.08.2018
13:45:59
Не ну рендер конечно можно запилить... Но смысла нет Тогда и на iOS что-то думать надо будет

Андрей Родионович
02.08.2018
13:47:24
Вообще

Google
Андрей Родионович
02.08.2018
13:47:52
Да, это баг Я только что всё обратно вернул

Запускаю и ничего

Потом вырубаю отладку, запускаю прогу и всё скролит

При новой отладке опять всё полетело, но всё же

Vlad
02.08.2018
13:48:51
???

Андрей Родионович
02.08.2018
13:49:17
Даже с отладкой вышло поправить, нужно лишь заблокировать и разблокировать телефон

Ничего сложного

Vlad
02.08.2018
13:49:51
Ну попробуйте перезагрузить все что можно и почистить и пересобрать проект Maybe...

Андрей Родионович
02.08.2018
13:50:38
Попробую проверить на эмуляторе

vladimir
02.08.2018
13:54:13
Доки кстати вместо ListView рекомендуют RecyclerView, не знаю правда насколько адекватно :)
очень даже адекватно, а почему Xamarin Forms не перевели на RecyclerView непонятно но в любом случае это будет в рендерере для ListView, а не ScrollView

Dmitriy
02.08.2018
14:09:39
Вчера у Jetbrains клевые скидки были, я пока не стал покупать ничего, но в целом интересно - Rider нужен, или ну нафиг?

Iván
02.08.2018
14:12:00
можно ж вроде community edition проверить и решить

Dmitriy
02.08.2018
14:12:43
У Rider нет community :) Есть 30-дневный триал :) И мне просто интересно что люди думают :)

Google
Kirill
02.08.2018
14:29:07
Марсель
02.08.2018
14:29:38
если хочешь иметь IDE с решпарпером не на винде, то это единственный вариант, а так я пока не вижу причин слезать с Visual Studio

Vlad
02.08.2018
14:30:06
Ну а на iOS UICollectionView для этого и рабоатет отлично)
Ну я не знаю как там с iOS Поэтому и сказал так?

?? Denis
02.08.2018
14:30:24
Rider это лучшая ide, которую я видел за последние 20 лет

Есть мелкие баги но они не мешают жить

Она значительно быстрее студии+решарпер

И хорошо кастомизируема

Max
02.08.2018
14:31:37
Она значительно быстрее студии+решарпер
есть небольшое НО, нет темплейтов, малейший апдейт == все пошло лесом, МЕДЛЕННЫЙ отладчик, хотя и работает, что странно, не умеет под разными конфигами Dev/Debug и тд нормально менять скажем Manifest для сборки пакета, нет поддержки RESX и самое главное - отсутствие нормальных плагинов на переход между VM/V.xaml/V.cs. Нет T4, нет еще кучи необходимых фич аля нормальным самописных темплейтов и сниппетов

Max
02.08.2018
14:34:53
не умеет в Shared Runtime уверенно

ну и естественно самый главный минус - под ним mac улетает в небеса при малейшем чихе

что привязывает тебя к разетке

Сергей
02.08.2018
14:40:33
Добрый день! Кто-нибудь сможет оказать платную консультацию по вопросу: есть библиотека smartEngine для распознования, исходники предоставить нельзя, но есть статья в которой достаточно информации https://habr.com/company/smartengines/blog/332670/ Дак вот. Библиотека имеет билды .so для разных архитектур, они собраны в native-libs.jar Для билдов также есть обертка jniSmartIdEngineJar.jar Есть sample использования в android studio, он рабочий и был транслирован в C#. Для использования этой библиотеки в Xamarin native я создал биндинг библиотеку, в папку jar положил native-libs.jar(LibraryProjectZip), jniSmartIdEngineJar.jar(InputJar). Обертка распозналась, код распарсился и его можно использовать. Но в sample есть вот эта строчка: Java.Lang.JavaSystem.LoadLibrary("jniSmartIdEngine"); Она в рантайме импортирует библиотеку. Вот с ней и возникла проблема. Ошибка без нее: Java.Lang.ClassNotFoundException: biz.smartengines.smartid.swig.RecognitionEngine ---> Java.Lang.ClassNotFoundException: Didn't find class "biz.smartengines.smartid.swig.RecognitionEngine" on path: DexPathList[[zip file "/data/app/com.skb.droid-LNBjtOdLLI81ye-pKkGlAA==/base.apk"],nativeLibraryDirectories=[/data/app/com.skb.droid-LNBjtOdLLI81ye-pKkGlAA==/lib/arm64, /data/app/com.skb.droid-LNBjtOdLLI81ye-pKkGlAA==/base.apk!/lib/arm64-v8a, /system/lib64, /system/vendor/lib64]] --- End of inner exception stack trace --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <f32579baafc1404fa37ba3ec1abdc0bd>:0 at Java.Interop.JniEnvironment+StaticMethods.CallStaticObjectMethod (Java.Interop.JniObjectReference type, Java.Interop.JniMethodInfo method, Java.Interop.JniArgumentValue args) [0x00069] in <7802aa64ad574c33adca332a3fa9706a>:0 at Android.Runtime.JNIEnv.CallStaticObjectMethod (System.IntPtr jclass, System.IntPtr jmethod, Android.Runtime.JValue parms) [0x0000e] in <263adecfa58f4c449f1ff56156d886fd>:0 at Android.Runtime.JNIEnv.CallStaticObjectMethod (System.IntPtr jclass, System.IntPtr jmethod, Android.Runtime.JValue[] parms) [0x00018] in <263adecfa58f4c449f1ff56156d886fd>:0 at Android.Runtime.JNIEnv.FindClass (System.String classname) [0x0003d] in <263adecfa58f4c449f1ff56156d886fd>:0 at Android.Runtime.JNIEnv.FindClass (System.String className, System.IntPtr& cachedJniClassHandle) [0x00011] in <263adecfa58f4c449f1ff56156d886fd>:0 at Biz.Smartengines.Smartid.Swig.RecognitionEngine.get_class_ref () [0x00001] in C:\Projects\skbbankcreditmanagermobile\src\SmartEngineJar\obj\Debug\generated\src\Biz.Smartengines.Smartid.Swig.RecognitionEngine.cs:34 at Biz.Smartengines.Smartid.Swig.RecognitionEngine..ctor (System.String p0) [0x000a3] in C:\Projects\skbbankcreditmanagermobile\src\SmartEngineJar\obj\Debug\generated\src\Biz.Smartengines.Smartid.Swig.RecognitionEngine.cs:70 at Droid.SmartId.SmartIdView.ConfigureEngine (System.String bundlePath) [0x00011] in C:\Projects\skbbankcreditmanagermobile\src\Droid\SmartId\SmartIdView.cs:470 at Droid.SmartId.SmartIdView+InitEngineTask.RunInBackground (Java.Lang.Void[] params) [0x00022] in C:\Projects\skbbankcreditmanagermobile\src\Droid\SmartId\SmartIdView.cs:102 --- End of managed Java.Lang.ClassNotFoundException stack trace --- java.lang.ClassNotFoundException: biz.smartengines.smartid.swig.RecognitionEngine at java.lang.Class.classForName(Native Method) at java.lang.Class.forName(Class.java:453) at md559731f2f7939b3bcf45b00745e5c6e82.SmartIdView_InitEngineTask.n_doInBackground(Native Method) at md559731f2f7939b3bcf45b00745e5c6e82.SmartIdView_InitEngineTask.doInBackground(SmartIdView_InitEngineTask.java:45) at android.os.AsyncTask$2.call(AsyncTask.java:333) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:245) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) at java.lang.Thread.run(Thread.java:764)

Caused by: java.lang.ClassNotFoundException: Didn't find class "biz.smartengines.smartid.swig.RecognitionEngine" on path: DexPathList[[zip file "/data/app/com.skb.droid-LNBjtOdLLI81ye-pKkGlAA==/base.apk"],nativeLibraryDirectories=[/data/app/com.skb.droid-LNBjtOdLLI81ye-pKkGlAA==/lib/arm64, /data/app/com.skb.droid-LNBjtOdLLI81ye-pKkGlAA==/base.apk!/lib/arm64-v8a, /system/lib64, /system/vendor/lib64]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:125) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) ... 10 more Из этой ошибки понятно, что библиотеку импортировать то все таки надо, но .so он не находит: Java.Lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.skb.droid-LNBjtOdLLI81ye-pKkGlAA==/base.apk"],nativeLibraryDirectories=[/data/app/com.skb.droid-LNBjtOdLLI81ye-pKkGlAA==/lib/arm64, /data/app/com.skb.droid-LNBjtOdLLI81ye-pKkGlAA==/base.apk!/lib/arm64-v8a, /system/lib64, /system/vendor/lib64]]] couldn't find "libjniSmartIdEngine.so" Немного покопавшись, я увидел что их нужно вручную добавлять, я добавил, но ничего не поменялось

vladimir
02.08.2018
14:44:51
Caused by: java.lang.ClassNotFoundException: Didn't find class "biz.smartengines.smartid.swig.RecognitionEngine" on path: DexPathList[[zip file "/data/app/com.skb.droid-LNBjtOdLLI81ye-pKkGlAA==/base.apk"],nativeLibraryDirectories=[/data/app/com.skb.droid-LNBjtOdLLI81ye-pKkGlAA==/lib/arm64, /data/app/com.skb.droid-LNBjtOdLLI81ye-pKkGlAA==/base.apk!/lib/arm64-v8a, /system/lib64, /system/vendor/lib64]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:125) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) ... 10 more Из этой ошибки понятно, что библиотеку импортировать то все таки надо, но .so он не находит: Java.Lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.skb.droid-LNBjtOdLLI81ye-pKkGlAA==/base.apk"],nativeLibraryDirectories=[/data/app/com.skb.droid-LNBjtOdLLI81ye-pKkGlAA==/lib/arm64, /data/app/com.skb.droid-LNBjtOdLLI81ye-pKkGlAA==/base.apk!/lib/arm64-v8a, /system/lib64, /system/vendor/lib64]]] couldn't find "libjniSmartIdEngine.so" Немного покопавшись, я увидел что их нужно вручную добавлять, я добавил, но ничего не поменялось
вы вызываете у себя JavaSystem.LoadLibrary("jniSmartIdEngine"); и оно отрабатывает нормально или исключение падает? или исключение падает позже в другом месте?

вам нужно вызывать методы которые внутри этой библиотеки или вам нужно, чтобы библиотека вызывала методы ваши? или и то и другое?

An
02.08.2018
14:53:17
Не могу понять, когда в xcode выбираешь team для подписи, то там пишет, что signing id и developer, а не distribution

Google
An
02.08.2018
14:53:51
Signing (auto)

Но мне для релиза же нужен Iphone distribution

Yura
02.08.2018
16:56:30
Привет, разработчики

Кто-то тут использовал gitlink? Я сделал все по гайду из гитхаба и то, что на картинке, на всякий случай



но не работает

пытаюсь дебажить mvvmcross 6

Valery
02.08.2018
18:22:51
Привет. Пытаюсь убрать зазоры между <Buttons> при выводе списка - они всё равно остаются ( Что не так делаю? <ListView x:Name="lsItemsList" HasUnevenRows="True" ItemsSource="{Binding .}"> <ListView.ItemTemplate> <DataTemplate> <ViewCell> <ViewCell.View> <StackLayout Padding="0,0,0,0" Orientation="Vertical"> <Button Margin="0,0,0,0" FontSize="Small" Text="{Binding _FullFIO}" TextColor="#f35e20" Clicked="BtnOneItemPhone_Clicked"></Button> <Button Margin="0,0,0,0" FontSize="Small" Text="{Binding Phone}" TextColor="#ff00ff" Clicked="BtnOneItemPhone_Clicked"></Button> <Label Margin="0,0,0,0" FontSize="Small" Text="{Binding _AddrBalls}" TextColor="DarkGreen"></Label> </StackLayout> </ViewCell.View> </ViewCell> </DataTemplate> </ListView.ItemTemplate> </ListView>



Valery
02.08.2018
18:25:33
у listview
У <ListView ругается на этот атрибут. Поставил его у: ListView.ItemTemplate Spacing="0"> Но остались зазоры.

Valery
02.08.2018
18:26:38


Vlad
02.08.2018
18:30:06
В самом StackLayout поставьте Spacing

Valery
02.08.2018
18:30:25
<ListView x:Name="lsItemsList" HasUnevenRows="True" ItemsSource="{Binding .}"> <ListView.ItemTemplate Spacing="0"> <DataTemplate> <ViewCell> <ViewCell.View Spacing="0"> <StackLayout Spacing="0" Padding="0,0,0,0" Orientation="Vertical"> <Button Margin="0,0,0,0" FontSize="Small" Text="{Binding _FullFIO}" TextColor="#f35e20" Clicked="BtnOneItemPhone_Clicked"></Button> <Button Margin="0,0,0,0" FontSize="Small" Text="{Binding Phone}" TextColor="#ff00ff" Clicked="BtnOneItemPhone_Clicked"></Button> <Label Margin="0,0,0,0" FontSize="Small" Text="{Binding _AddrBalls}" TextColor="DarkGreen"></Label> </StackLayout> </ViewCell.View> </ViewCell> </DataTemplate> </ListView.ItemTemplate> </ListView> Вот так сделал, в трёх местах Spacing="0"



Vlad
02.08.2018
18:32:23
По-моему с ними ничего не сделаете Я когда-то сам пытался их в ряд поставить, но не судьба? Пришлось делать костыльно)

Valery
02.08.2018
18:34:26
Жаль(.. Это из-за кнопок Button, они дают зазор. Если только Label делать, нет зазора.

Google
Valery
02.08.2018
18:34:37


А, кроме Button, у каких UI Xamarin элементов есть событие Clicked? Просто в буфер обмена нужно копировать данные - решил по клику кнопок это сделать.

Vlad
02.08.2018
18:36:27
А, кроме Button, у каких UI Xamarin элементов есть событие Clicked? Просто в буфер обмена нужно копировать данные - решил по клику кнопок это сделать.
Ну я делал StackLayout и в него клал Label. Далее для StackLayout ставил GestureRecognizer Можно и к самому Label'у ставить GestureRecognizer

Valery
02.08.2018
18:38:24
Ну я делал StackLayout и в него клал Label. Далее для StackLayout ставил GestureRecognizer Можно и к самому Label'у ставить GestureRecognizer
Интересная идея, не знал про GestureRecognizers и TapGestureRecognizer - буду изучать. Спасибо!

Отлично - вот так всё получилось: и убрать зазоры, и клики обработать: <ListView x:Name="lsItemsList" HasUnevenRows="True" ItemsSource="{Binding .}"> <ListView.ItemTemplate Spacing="0"> <DataTemplate> <ViewCell> <ViewCell.View Spacing="0"> <StackLayout Spacing="0" Padding="0,0,0,0" Orientation="Vertical"> <Label Margin="0,0,0,0" FontSize="Small" Text="{Binding _FullFIO}" TextColor="#f35e20" > <Label.GestureRecognizers> <TapGestureRecognizer Tapped="OnTapGestureRecognizer_FIO_Tapped" NumberOfTapsRequired="1" /> </Label.GestureRecognizers> </Label> <Label Margin="0,0,0,0" FontSize="Small" Text="{Binding Phone}" TextColor="#ff00ff" > <Label.GestureRecognizers> <TapGestureRecognizer Tapped="OnTapGestureRecognizer_Phone_Tapped" NumberOfTapsRequired="1" /> </Label.GestureRecognizers> </Label> <Label Margin="0,0,0,0" FontSize="Small" Text="{Binding _AddrBalls}" TextColor="DarkGreen"></Label> </StackLayout> </ViewCell.View> </ViewCell> </DataTemplate> </ListView.ItemTemplate> </ListView>

И в *.cs: private async void OnTapGestureRecognizer_FIO_Tapped(object sender, EventArgs args) { Label lb = sender as Label; string s = lb.Text; PasteTextToClipboard(s); //await DisplayAlert("Сообщение", "Нажато имя: " + s, "OK"); } private async void OnTapGestureRecognizer_Phone_Tapped(object sender, EventArgs args) { Label lb = sender as Label; string s = lb.Text; PasteTextToClipboard(s); //await DisplayAlert("Сообщение", "Нажат телефон: " + s, "OK"); }

Admin
ERROR: S client not available

Valery
02.08.2018
18:45:45
Спасибо за помощь)

Valery
02.08.2018
19:08:36
у StackLayout свойство Spacing = 0 указать
Пробовал, описал XAML выше - не сработало, когда <Button> были внутри.

Когда отказался от Button в пользу Label, то сработало

Artem
02.08.2018
19:13:58
Когда отказался от Button в пользу Label, то сработало
Можете label обернуть во frame и настроить его так, чтобы он был похож на кнопки

Valery
02.08.2018
19:38:41
Мне от кнопок только события клика Clicked нужны были. Выше Влад подсказал про <Label.GestureRecognizers> <TapGestureRecognizer> - это сработало.

Вот такой XAML дал кликабельный Label: <Label Margin="0,0,0,0" FontSize="Small" Text="{Binding _FullFIO}" TextColor="#f35e20" > <Label.GestureRecognizers> <TapGestureRecognizer Tapped="OnTapGestureRecognizer_FIO_Tapped" NumberOfTapsRequired="1" /> </Label.GestureRecognizers> </Label> где OnTapGestureRecognizer_Phone_Tapped - имя метода моего обработчика клика.

Олег
03.08.2018
02:39:34
Всем доброе утро. Вопрос по верстке. У меня на странице StackLayout. В нем еще 2 слоя: Absolute как хедер, Scroll как контентосодержащий слой. В scrollview дофига всего, но в самом внизу есть listview. Я пробовал брать разные cell, но все равно одно и то же - остается огромное пустое место. Скрин скину. Я думал, что создаются пустые строки, т.к. в коллекции левые нулевые элементы могут откуда-то выползти, но это не вариант, т.к. я перед наполнением коллекции делаю Clear().





Anmol
03.08.2018
04:32:59
Does anyone know of touch coordinates system in xamarin?

If you touch the right side of the image, it will trigger a method and if you touch the left side then it will trigger another method

Google
Олег
03.08.2018
04:40:45
А можно по конкретнее, либо я тугой, либо я не вижу на скринах пустых строк?
Так я и говорю, что думал, будто пустые строки создаются, но это не так. После листвью идет пустое поле, которого быть не должно.

Андрей Родионович
03.08.2018
04:42:07
Так я и говорю, что думал, будто пустые строки создаются, но это не так. После листвью идет пустое поле, которого быть не должно.
Всм не должно? У вас же листвью не полностью заполнен Попробуйте задать ему бэкграунд колор и посмотрите сколько места на самом деле он занимает

На айос же оно должно так работать

Олег
03.08.2018
04:43:17
А, про фишку с цветом фона я забыл, попробую попозже.

Max
03.08.2018
05:14:47
If you touch the right side of the image, it will trigger a method and if you touch the left side then it will trigger another method
U can use Grid and 2 transparent elements on top of 2 columns. Then use Taprecognizer (GestureRecognize)

Anmol
03.08.2018
05:36:01
Oh alright thanks!

Dmitry
03.08.2018
05:38:04
пытаюсь дебажить mvvmcross 6
получилось что-нить? во времена 5го мвх пытался, и у меня не взлетело

Андрей Родионович
03.08.2018
05:38:36
Либо он мог таки добавить рекогнайзер на картинку и в нем отлавливать координаты тапа относительно половинок картинки Так ведь можно?(я про координаты)

Похоже, что нет :(

Max
03.08.2018
06:19:37
Либо он мог таки добавить рекогнайзер на картинку и в нем отлавливать координаты тапа относительно половинок картинки Так ведь можно?(я про координаты)
Не знаю насчёт координат нажатия просто. В любом случае тогда бы пришлось ещё ловить координаты картинки

Андрей Родионович
03.08.2018
06:20:38
Не знаю насчёт координат нажатия просто. В любом случае тогда бы пришлось ещё ловить координаты картинки
Только что гуглил Без таких решений как допустим skia или mr.gesture это не реализуемо

Вроде как

Alexey
03.08.2018
07:05:12
@Tiotenshi, для решения этой проблеммы нужно считать высоту ListView самоcтоятельно. что-то вроде этого : ListViewHeight = _сellHeight * ListViewItems.Count; И вызывать эту строку при обновлении коллекции.

Страница 497 из 619