본문 바로가기

반응형

Programming/Xamarin

(27)
Xamarin forms 에서 svg file 사용하기 1. Xamarin.FFImageLoading package 사용Nuget Package가 제공됨. 패키지 설치 진행 git : https://github.com/luberda-molinet/FFImageLoading 2. [Android] MainActivity.cs Oncreate()에 랜더러 초기화코드 추가1CachedImageRenderer.Init(true); +IOS도 마찬가지로 AppDeletage.cs FinishedLaunching()에 랜더러 초기화 코드 추가 3. svg 파일추가svg 파일을 .NET Standard project에 embedded resource 타입으로 추가하여 Android/IOS에서 공유하여 사용하도록 했음 4. 사용1234567
Use Shared Mono Runtime Error 작업을 마치고 아카이브에 등록할때 아래와 같은 에러가 발생할 때가 있다. Please ensure that you are using a release configuration and that the "Use Shared Mono Runtime" option in your project's build options is unchecked. 릴리즈모드에서 사용할 수 없는 아래 옵션(Use Shared Runtime)에 체크가 되어있는 경우 발샐하는 에러인데 문제는 간혹 체크가 되어있지 않은 상황에서도 발생한다는 점이다. 해결책은 비쥬얼스튜디오의 재실행이다. ref : https://github.com/xamarin/xamarin-android/issues/1760
Undoing Edit AndroidManifest.xml apk 설정을 마치고 설정 내용을 커밋한 뒤 브랜치를 변경하려는 찰나 changes가 있어서 브랜치 변경에 실패했다. 방금 다 커밋 했는데 무슨 변경사항이 남아있는지.. 의심을 품고 changes를 보니 AndroidManifest.xml 파일이 있었다. 이상한 것은 우클릭 후 Compare with unmodified 를 해보면 아무 변경사항이 없다는 것.. Undo changes 를 누르면 아래와 같은 정보를 내뿜으며 여전히 changes에 남아있다. 이전에도 비슷한 경험이 있어 bin/obj 폴더삭제 + VisualStudio 재시작을 해보았지만 여전히 먹통이었다. Undo changes 시에 마지막 수정시간이 계속 갱신되는 것으로 보아 VS에서 파일에 뭔가 하고 있는 것 같기는 한데..버그임을 직..
Xamarin Forms ImageButton 기존에 이미지가 삽입된 버튼을 사용하려면Image 컨트롤에 터치엑션을 연결하여 마치 버튼처럼 동작하도록 하거나Button 컨트롤 안에 억지로 이미지를 넣는 조금 귀찮은 작업을 해야했다. 반갑게도 Xamarin.Forms 3.4.0 릴리즈에 ImageButton 이라는 컨트롤이 추가되었다.마침 토이프로젝트에 ImageButton이 필요하던 참이라 바로 적용 해보았다. 1234567cs 좌측이 새로적용한 ImageButton이고 우측이 기본 Button에 Text를 넣은 결과이다. (레이아웃은 동일) Sourcr property에 이미지를 넣어 사용할 수 있다.또한 기존 Button에 있던 Text를 비롯한 FontSize, TextColor와 같은 Text 관련 property들은 사라졌다. + backg..
A value of type cannot be added to a collection or dictionary of type 'IList'. 기존에 잘 사용하던 클래스(정확히는 XamarinForms.RoutingEffect 를 상속해서 만든)가 갑자기 에러메세지를 만든다. 코드상 바꾼 내용은 없고 이전(동작하던)과 달라진 점이라면 Xamarin.Forms update 를 했는데... Nuget package 업데이트 후 종종 원인모를 빨간줄이 생겼던 경험이 있어 bin/obj 폴더 정리 후 다시 빌드하니 에러가 사라진다. 이전에 비슷한 경험이 없었다면 문제해결에 시간을 얼마나 소모했을까?
Only the original thread that created a view hierarchy can touch its views exception Android.Util.AndroidRuntimeException: Only the original thread that created a view hierarchy can touch its views. Xamarin.Forms 페이지들간의 호출관계 및 각 페이지의 async/await 패턴을 정리하다가 위와 같은 예외가 발생했다.비슷한 문제를 Winform, WPF 에서 겪어봐서 어떤 상황인지는 보자마자 대강 감이왔다. Original thread (UI Thread 혹은 Main Thread)가 아닌 thread에서 UI 작업을 시도할 때 발생하는 예외이다. 아래와같이 BeginInvokeOnMainThread() 를 통해 Original thread에서 해당작업을 수행하도록 하면 된다. 12345 ..

반응형