Xamarinと.NET MAUIのスレッドです。
C#でクロスプラットフォームのアプリを開発できるフレームワーク
無料、クロスプラットフォーム、オープンソース。
対応プラットフォームは、Windows, Android, iOS, macOS, Linuxなど
Microsoft .NET MAUI part9 [Xamarin]
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2022/09/13(火) 20:08:18.38ID:vLvjlCfL2022/09/15(木) 08:37:57.65ID:ZGfA7vld
これからXamarin.formsのアプリをMAUIに移植しなきゃならないのだけど
plugin bleとか使えるのかな
使えないと地獄だけど
plugin bleとか使えるのかな
使えないと地獄だけど
22.NET MAUI HS
2022/09/15(木) 12:43:05.08ID:qn04I4Ph >>20
俺e-typing平均Aだから余裕かな
俺e-typing平均Aだから余裕かな
2022/09/16(金) 16:13:54.31ID:1woCku44
>>20
もうちょっとすればキーボード叩かなくてもスマホつないでスワイプ入力すればいい時代が来そう
もうちょっとすればキーボード叩かなくてもスマホつないでスワイプ入力すればいい時代が来そう
24.NET MAUI HS
2022/09/17(土) 19:47:15.06ID:yUvyoPXr2022/09/17(土) 19:56:43.23ID:ONBj3Hkh
動画つくらんの?三日坊主?
26.NET MAUI HS
2022/09/17(土) 20:28:40.79ID:yUvyoPXr >>25
つくったけど?
今日の昼アップロードした
他でやれって言われたから専スレ作ったんだけど
.NET MAUI HighSchool
https://mevius.5ch.net/test/read.cgi/tech/1662947042/
つくったけど?
今日の昼アップロードした
他でやれって言われたから専スレ作ったんだけど
.NET MAUI HighSchool
https://mevius.5ch.net/test/read.cgi/tech/1662947042/
27デフォルトの名無しさん
2022/09/19(月) 08:23:29.23ID:Guc0YHbo ナビゲーションメニュー初めて作って見たんだけどナビゲーション先でObservableCollectionにAddしたものがメインのCollectionViewに表示されるようにするにはどうすればいいんだろうか?
ナビゲーションバックでコレクションを更新すればよいのかな?
ナビゲーションバックでコレクションを更新すればよいのかな?
2022/09/19(月) 08:42:40.58ID:CegtP/3a
>>27
逆に何で同じコレクションを使わないんだ
逆に何で同じコレクションを使わないんだ
29デフォルトの名無しさん
2022/09/19(月) 09:59:22.76ID:Guc0YHbo >>28
同じコレクション使ってるはずなんだけどページにそれを持ってこうとするとできないんよなぁ…
どうすればいいんだろうか?
違うページでObservableCollectionが入ってるクラスをnewしたら初期化されるかなぁ?
同じコレクション使ってるはずなんだけどページにそれを持ってこうとするとできないんよなぁ…
どうすればいいんだろうか?
違うページでObservableCollectionが入ってるクラスをnewしたら初期化されるかなぁ?
2022/09/19(月) 10:23:17.35ID:lsi5cYj1
何を言ってるのかよくわからん
1つのObservableCollectionを2つのビューにバインドすればいいだけだろう
何をどうしたらそんなことになるんだ
それが再現できる最小のコードを作ってみたら動画のネタにもなるんじゃね
まさか2つのViewModelそれぞれに違うインスタンスのコレクションを追加して自動的に同期しないと悩んでるんじゃないだろうな
1つのObservableCollectionを2つのビューにバインドすればいいだけだろう
何をどうしたらそんなことになるんだ
それが再現できる最小のコードを作ってみたら動画のネタにもなるんじゃね
まさか2つのViewModelそれぞれに違うインスタンスのコレクションを追加して自動的に同期しないと悩んでるんじゃないだろうな
2022/09/19(月) 10:44:45.76ID:shikJWy/
それなんじゃね
DIで別のインスタンスみてんじゃ
DIで別のインスタンスみてんじゃ
2022/09/19(月) 11:35:41.96ID:lsi5cYj1
DIならAddTransientだと別々のインスタンスになるからAddSingletonしとけ
public class Model
{
public Collection{get;}=new ObservableCollection<string>();
}
public class ViewModel
{
public ViewModel(Model model)
{
Model=model;
}
public Model Model{get;}
}
public MainPage(ViewModel viewModel)
{
ViewModel=viewModel;
}
public Model ViewModel{get;}
}
こんな風に作ったら
builder.Services.AddSingleton<Model>().AddSingleton<ViewModel>().AddSingleton<MainPage>();
こうすればそれぞれのコンストラクタにインスタンスが自動的に注入される
コンストラクタの引数をインターフェースにしとけばテストの時にモックが注入できる
public class Model
{
public Collection{get;}=new ObservableCollection<string>();
}
public class ViewModel
{
public ViewModel(Model model)
{
Model=model;
}
public Model Model{get;}
}
public MainPage(ViewModel viewModel)
{
ViewModel=viewModel;
}
public Model ViewModel{get;}
}
こんな風に作ったら
builder.Services.AddSingleton<Model>().AddSingleton<ViewModel>().AddSingleton<MainPage>();
こうすればそれぞれのコンストラクタにインスタンスが自動的に注入される
コンストラクタの引数をインターフェースにしとけばテストの時にモックが注入できる
33デフォルトの名無しさん
2022/09/19(月) 12:15:12.04ID:Guc0YHbo こんな感じでObservableCollectionをDataCollectionとして作って
(DataSet.cs)
https://imgur.com/EyItdN6.jpg
Navigation先でAddしたやつを
(DetailPage.xaml.cs)
https://imgur.com/y6mRlTQ.jpg
MainPageのCollectionView(memoList)に反映させたい
(MainPage.xaml.cs)
https://imgur.com/yukXPyC.jpg
(DataSet.cs)
https://imgur.com/EyItdN6.jpg
Navigation先でAddしたやつを
(DetailPage.xaml.cs)
https://imgur.com/y6mRlTQ.jpg
MainPageのCollectionView(memoList)に反映させたい
(MainPage.xaml.cs)
https://imgur.com/yukXPyC.jpg
34デフォルトの名無しさん
2022/09/19(月) 12:20:06.36ID:Guc0YHbo そういえばナビゲーション先のページAddTransientにしてたわ
AddSingletonにします。
AddSingletonにします。
35デフォルトの名無しさん
2022/09/19(月) 12:43:46.65ID:Guc0YHbo newじゃなくて{get}だけでいいのかな?
2022/09/19(月) 12:53:29.94ID:lsi5cYj1
AddTransientどうこうより先に2回newしてんじゃねーかw
2022/09/19(月) 12:57:27.09ID:lsi5cYj1
>>34
ページはどうせアプリ終了まで生きてるからどうだっていいぞ
ページはどうせアプリ終了まで生きてるからどうだっていいぞ
38デフォルトの名無しさん
2022/09/19(月) 14:21:39.73ID:Guc0YHbo2022/09/19(月) 14:26:26.45ID:lsi5cYj1
AddSingletonしろって言ったばかりだがもしかしてインスタンスの概念がわからない系?
40デフォルトの名無しさん
2022/09/19(月) 14:53:54.45ID:Guc0YHbo2022/09/19(月) 15:10:23.98ID:oefI52tK
>>40
いやだからnewしないの
さっき書いたコードのModelのとこを共有したいコレクションを持ったクラスに書き換える
するとサービスプロバイダーにそのクラスを要求したら最初の1回は自動的にnewされたインスタンスが返り、次からは同じインスタンスが返る
つまり何回要求しても同じものが返ってくるんだよ
ここではDIを使ってるからMainPageがMauiAppに作成された時点でViewModelが自動的にサービスプロバイダから注入され、ViewModelが作成された時点でModelが注入される
同じく別のページとそのVMもAddSingletonしとけばそのページに遷移した時にVMにモデルの同じインスタンスが注入される
同じインスタンスだから状態も共有する
newしたら別のインスタンスになっちゃうだろ?
いやだからnewしないの
さっき書いたコードのModelのとこを共有したいコレクションを持ったクラスに書き換える
するとサービスプロバイダーにそのクラスを要求したら最初の1回は自動的にnewされたインスタンスが返り、次からは同じインスタンスが返る
つまり何回要求しても同じものが返ってくるんだよ
ここではDIを使ってるからMainPageがMauiAppに作成された時点でViewModelが自動的にサービスプロバイダから注入され、ViewModelが作成された時点でModelが注入される
同じく別のページとそのVMもAddSingletonしとけばそのページに遷移した時にVMにモデルの同じインスタンスが注入される
同じインスタンスだから状態も共有する
newしたら別のインスタンスになっちゃうだろ?
2022/09/19(月) 15:42:31.60ID:oefI52tK
44デフォルトの名無しさん
2022/09/19(月) 15:54:41.38ID:Guc0YHbo2022/09/19(月) 15:56:32.37ID:oefI52tK
機能としては相当前からあるがここまでの圧をもって押し付けてくるのはMAUIからかな
46デフォルトの名無しさん
2022/09/19(月) 15:59:03.17ID:Guc0YHbo >>45
ありがとう!
ありがとう!
2022/09/19(月) 19:25:59.58ID:UixL+xz1
2022/09/20(火) 18:48:08.27ID:tcmFdYIT
MAUI、CollectionViewがバグりすぎててガチで使えないwwwwwwww
ItemTemplate を設定してあるとき、バインド元のコレクションの要素の置き換えをやると画面上では要素が置き換わったように見えるが、置き換え前のビューもなぜかメモリ上に残ったままになるwwwwwwwう◯こwwwwwww
ItemTemplate を設定してあるとき、バインド元のコレクションの要素の置き換えをやると画面上では要素が置き換わったように見えるが、置き換え前のビューもなぜかメモリ上に残ったままになるwwwwwwwう◯こwwwwwww
49デフォルトの名無しさん
2022/09/20(火) 18:52:37.03ID:uMWd7f8R >>48
メモリ管理ができてないってこと?
メモリ管理ができてないってこと?
50デフォルトの名無しさん
2022/09/20(火) 19:41:41.12ID:+1ymuJNf >>48
こいつが使い方間違えてるのに50ペリカ
こいつが使い方間違えてるのに50ペリカ
2022/09/20(火) 19:43:54.08ID:Pye1gVbz
まさか上の続きなのか?
52デフォルトの名無しさん
2022/09/20(火) 19:51:35.86ID:uMWd7f8R 俺は.NET MAUIのこと悪く言わんよ
EditorコントロールがAndroidでは外側のグリッド(フレーム、スタックレイアウト含む)のWidthを参照しないって仕様は見つけたけど
ホリゾンタルオプションズをフィルにしても一文字分のWidthにしかならんやつ
もちろんちゃんとWidthリクエストすれば問題ない
EditorコントロールがAndroidでは外側のグリッド(フレーム、スタックレイアウト含む)のWidthを参照しないって仕様は見つけたけど
ホリゾンタルオプションズをフィルにしても一文字分のWidthにしかならんやつ
もちろんちゃんとWidthリクエストすれば問題ない
2022/09/20(火) 20:34:41.76ID:+UHOIJTp
まあ現象再現する最小コードでも上げてもらわないと何とも言えんわな
2022/09/20(火) 20:47:07.60ID:4OsfujaD
2022/09/20(火) 23:22:31.32ID:nDZPLz9M
debounceとかthrottleとかそういうのを知らずにゴリゴリ押して苦しんでる人結構多いよね。
webはおもちゃ、ゲームも所詮おもちゃ、とか言って叩いて無視しすぎたんじゃないかなって思うわ。
webはおもちゃ、ゲームも所詮おもちゃ、とか言って叩いて無視しすぎたんじゃないかなって思うわ。
2022/09/20(火) 23:29:09.65ID:tcmFdYIT
プロジェクト作って、
MainPage.xaml
<?xml version="1.0" encoding="utf-8" ?> <ContentPage xmlns="<http://schemas.microsoft.com/dotnet/2021/maui>" xmlns:x="<http://schemas.microsoft.com/winfx/2009/xaml>" xmlns:local="clr-namespace:CollectionViewMemoryLeak" x:Class="[プロジェクト名].MainPage" x:DataType="local:MainPage"> <Grid RowDefinitions="Auto,*"> <Button Text="Replace" Clicked="Button_Clicked"/> <CollectionView Grid.Row="1" ItemsSource="{Binding Items}"> <CollectionView.ItemTemplate> <DataTemplate> <Label Text="{Binding}"/> </DataTemplate> </CollectionView.ItemTemplate> </CollectionView> </Grid> </ContentPage>
MainPage.xaml.cs
using System.Collections.ObjectModel; namespace [プロジェクト名]; public partial class MainPage : ContentPage { public ObservableCollection<string> Items { get; } = new() { "a" }; public MainPage() { InitializeComponent(); BindingContext = this; } private void Button_Clicked(object sender, EventArgs e) { Items[0] += "b"; } }
って置き換えて、デバッグ開始
ボタン1万回ぐらい押すとわかると思うよ
MainPage.xaml
<?xml version="1.0" encoding="utf-8" ?> <ContentPage xmlns="<http://schemas.microsoft.com/dotnet/2021/maui>" xmlns:x="<http://schemas.microsoft.com/winfx/2009/xaml>" xmlns:local="clr-namespace:CollectionViewMemoryLeak" x:Class="[プロジェクト名].MainPage" x:DataType="local:MainPage"> <Grid RowDefinitions="Auto,*"> <Button Text="Replace" Clicked="Button_Clicked"/> <CollectionView Grid.Row="1" ItemsSource="{Binding Items}"> <CollectionView.ItemTemplate> <DataTemplate> <Label Text="{Binding}"/> </DataTemplate> </CollectionView.ItemTemplate> </CollectionView> </Grid> </ContentPage>
MainPage.xaml.cs
using System.Collections.ObjectModel; namespace [プロジェクト名]; public partial class MainPage : ContentPage { public ObservableCollection<string> Items { get; } = new() { "a" }; public MainPage() { InitializeComponent(); BindingContext = this; } private void Button_Clicked(object sender, EventArgs e) { Items[0] += "b"; } }
って置き換えて、デバッグ開始
ボタン1万回ぐらい押すとわかると思うよ
2022/09/20(火) 23:35:20.72ID:tcmFdYIT
ボタン1万回押したくない人用
for (int i = 0; i < 10000; ++i) { await Task.Delay(1); Items[0] += "b"; }
for (int i = 0; i < 10000; ++i) { await Task.Delay(1); Items[0] += "b"; }
2022/09/20(火) 23:36:04.90ID:tcmFdYIT
※ライブツリービューがめっちゃ重くなるので注意
59デフォルトの名無しさん
2022/09/21(水) 08:20:20.15ID:e5hMcSyJ .NET 7でマップコントロールが来る!
あとデスクトップようにツールチップやコンテキストメニューが追加されるそうな
あとデスクトップようにツールチップやコンテキストメニューが追加されるそうな
60デフォルトの名無しさん
2022/09/21(水) 08:20:43.29ID:e5hMcSyJ2022/09/21(水) 08:30:02.80ID:kbEKaFBQ
Xamarin.formsからの移植って
今までのフォームやソースはだいたい使えるの?
dependencyとかそのまま使える?
フォルダ構成が変わりすぎててAndroid独自のソースどこにおけばいいかわからない
今までのフォームやソースはだいたい使えるの?
dependencyとかそのまま使える?
フォルダ構成が変わりすぎててAndroid独自のソースどこにおけばいいかわからない
62デフォルトの名無しさん
2022/09/21(水) 08:39:42.22ID:e5hMcSyJ >>61
ディペンデンシーはHandlerになった
ディペンデンシーはHandlerになった
63デフォルトの名無しさん
2022/09/21(水) 08:40:16.29ID:e5hMcSyJ AndroidのソースはPlatformフォルダにいれればよい
2022/09/21(水) 08:58:23.97ID:KMcq8I6w
>>61
Android独自のソースはPlatforms/Androidの下に置く
そうするとAndroid版のコンパイル対象になる
それか#if ANDROIDの中に入れる
Xamarinは複数プロジェクトだったけどMAUIは部分メソッドを使いたいために単一プロジェクトになってる
つまり共通ソースに部分メソッドの宣言を書いてPlatforms以下それぞれのプラットフォームにそれぞれの実装を書く
UIをカスタマイズしたいならレンダラーじゃなくハンドラーを書くかマッピングを変更する
マッピングの方が軽い変更に向く
マッピングとはUIの共通コードのメソッドやプロパティーをファサードとしてそれらへの操作と実際のそれぞれのプラットフォームでの実装を関連付けるものでプロパティーやメソッド毎に設定できる
一応Xamarinのソースはコンバートできることになってるけど信用してはいけない
Android独自のソースはPlatforms/Androidの下に置く
そうするとAndroid版のコンパイル対象になる
それか#if ANDROIDの中に入れる
Xamarinは複数プロジェクトだったけどMAUIは部分メソッドを使いたいために単一プロジェクトになってる
つまり共通ソースに部分メソッドの宣言を書いてPlatforms以下それぞれのプラットフォームにそれぞれの実装を書く
UIをカスタマイズしたいならレンダラーじゃなくハンドラーを書くかマッピングを変更する
マッピングの方が軽い変更に向く
マッピングとはUIの共通コードのメソッドやプロパティーをファサードとしてそれらへの操作と実際のそれぞれのプラットフォームでの実装を関連付けるものでプロパティーやメソッド毎に設定できる
一応Xamarinのソースはコンバートできることになってるけど信用してはいけない
2022/09/23(金) 08:43:29.04ID:8SR5QsWP
MAUIではFreezableクラスが無くてBindingProxyを使えないのな。 書くしか無いか・・・
いちいち、DataGridセルなどのチャイルドレベルからDataContextを何段階アンセスターサーチなんてやってられない。
マンドクセーし、保守性悪い。
いちいち、DataGridセルなどのチャイルドレベルからDataContextを何段階アンセスターサーチなんてやってられない。
マンドクセーし、保守性悪い。
66デフォルトの名無しさん
2022/09/23(金) 09:03:46.50ID:gGLSN0ir UIChallengeやってる人がFigmaAPI使ってC#のグラフィックコード生成するアプリを作ったみたいだね
https://twitter.com/jsuarezruiz/status/1572895480723701766?t=vNe15B3htG50jNi3BvnLZQ&s=19
https://twitter.com/5chan_nel (5ch newer account)
https://twitter.com/jsuarezruiz/status/1572895480723701766?t=vNe15B3htG50jNi3BvnLZQ&s=19
https://twitter.com/5chan_nel (5ch newer account)
67デフォルトの名無しさん
2022/09/23(金) 23:24:43.35ID:gGLSN0ir .NET 7のMAUIについてMicrosoftのJames Montemgnoさんが語るみたい
0時から
https://youtu.be/qR_YlN3ZrLo
まぁ地図機能がほとんどだろうな
あとデュアルスクリーンか?
AndroidやiOSでもできるのだろうか?
0時から
https://youtu.be/qR_YlN3ZrLo
まぁ地図機能がほとんどだろうな
あとデュアルスクリーンか?
AndroidやiOSでもできるのだろうか?
68デフォルトの名無しさん
2022/09/25(日) 08:46:38.00ID:DIWRYevd 固有プラットフォームのコードを呼び出すやつって条件付きコンパイルとパーシャルクラス使うやつあるけどパーシャルクラスの利点ってなんですかね?
維持管理がしやすいとか?
条件付きコンパイルはifつければいいだけだから実装は簡単
維持管理がしやすいとか?
条件付きコンパイルはifつければいいだけだから実装は簡単
2022/09/25(日) 15:38:50.86ID:eI3nstYC
xamarin.fomsだと、ホットリロードが効くのはxamlだけで
csファイルは再起動が必要だけど
MAUIはCSにもホットリロードが効くようになったの?
csファイルは再起動が必要だけど
MAUIはCSにもホットリロードが効くようになったの?
2022/09/25(日) 18:01:23.95ID:B1nX0Ni1
>>68
違いはねぇんじゃね。 あるとすれば、他のプラットフォームコードが視界に入ってこない事ぐらい。
Dependenciesにインターフェースレポジトリ継承宣言を置いてPlatformsにカキコするのはありきたり。 ドメイン駆動開発やっていれば常識。
ただ、上の方にもあったようだが、ドメイン駆動として、Core、Domain、Infrastructueのダイアゴナル構造にしようとすると、
クラスライブラリではPlatformsから参照できるものの、定義宣言から実装側を認識できないバグがあるので、現在は、MAUIでDDD開発はできない。
違いはねぇんじゃね。 あるとすれば、他のプラットフォームコードが視界に入ってこない事ぐらい。
Dependenciesにインターフェースレポジトリ継承宣言を置いてPlatformsにカキコするのはありきたり。 ドメイン駆動開発やっていれば常識。
ただ、上の方にもあったようだが、ドメイン駆動として、Core、Domain、Infrastructueのダイアゴナル構造にしようとすると、
クラスライブラリではPlatformsから参照できるものの、定義宣言から実装側を認識できないバグがあるので、現在は、MAUIでDDD開発はできない。
71デフォルトの名無しさん
2022/09/25(日) 19:46:23.83ID:DIWRYevd >>70
ふーん
ふーん
2022/09/25(日) 20:13:20.96ID:+uZ+5XyS
ガキかよ
73デフォルトの名無しさん
2022/09/25(日) 23:08:59.93ID:DIWRYevd74デフォルトの名無しさん
2022/09/26(月) 00:17:53.00ID:aC/L4xEl 最近Twitterで.NET MAUIで検索して困ってる人に勝手にリプライ送るのが日課になってるわ
.NET MAUIで検索してるからMAUIだけだとヒットしない
.NET MAUIで検索してるからMAUIだけだとヒットしない
2022/09/26(月) 00:45:17.09ID:Gt3ajrW+
マウイ島が引っかかるからmauiで検索できないんだよな
MSの命名センスが終わってるのはいつもの事だが
せめてXamarin引き継げばマシだったろうに
MSの命名センスが終わってるのはいつもの事だが
せめてXamarin引き継げばマシだったろうに
76デフォルトの名無しさん
2022/09/26(月) 00:55:05.74ID:aC/L4xEl77デフォルトの名無しさん
2022/09/26(月) 00:59:24.96ID:aC/L4xEl MAUIってまぁ英語がマルチプラットフォームアップUIだから仕方ないんだろうけどもうちょっとおしゃれな名前にしてほしいよな
紫基準としてるからアヤメから取ってAIrisとか
紫基準としてるからアヤメから取ってAIrisとか
78デフォルトの名無しさん
2022/09/26(月) 01:06:20.35ID:aC/L4xEl Azureみたいな存在感が欲しい
2022/09/26(月) 06:27:32.75ID:R0PD3Sxd
法律事務所みたいな名前もやだ
2022/09/26(月) 07:45:42.28ID:5vr5CeRQ
>>69
効かないよ
効かないよ
81デフォルトの名無しさん
2022/09/26(月) 08:04:38.21ID:aC/L4xEl Flutterも効かないんじゃね?
ReactNativeは知らん
ReactNativeは知らん
2022/09/26(月) 12:32:43.92ID:6iA7KcBP
検索しにくくしようとしてんのかどこかの国の登録商標を避けようとしてんのか知らんけど地名とか数字とか名前にするのはいい加減やめてくれと言いたい
Androidのお菓子の名前もな
Androidのお菓子の名前もな
2022/09/26(月) 13:52:21.23ID:SjwsmYoD
マウイって読むのが正解なの?
2022/09/26(月) 13:56:39.12ID:Y1BkY0St
エメユアーイ
85デフォルトの名無しさん
2022/09/26(月) 15:26:07.01ID:aC/L4xEl マウイー
86デフォルトの名無しさん
2022/09/26(月) 19:26:43.40ID:+DW4kmyN まぁうぃ
2022/09/27(火) 00:07:51.38ID:hxVfl3cS
Mauiへの移植、そう簡単にはいかなそうだなぁ
ちょっといじっただけで
スプラッシュスクリーンの使い方も違うし、アイコンの配置場所も変えなきゃだし
PageView/ContensViewのヘッダのおまじないも違う(一括置換でいけるのかな)
せめてなんかツールが欲しい・・・
ちょっといじっただけで
スプラッシュスクリーンの使い方も違うし、アイコンの配置場所も変えなきゃだし
PageView/ContensViewのヘッダのおまじないも違う(一括置換でいけるのかな)
せめてなんかツールが欲しい・・・
88デフォルトの名無しさん
2022/09/27(火) 00:14:07.13ID:rJ/evy9A >>87
なんかツールなかったっけ?
これ使えねぇの?
https://dev.classmethod.jp/articles/using-net-upgrade-assistant-xamarin-forms-net-maui/
なんかツールなかったっけ?
これ使えねぇの?
https://dev.classmethod.jp/articles/using-net-upgrade-assistant-xamarin-forms-net-maui/
2022/09/27(火) 09:58:49.16ID:L5WSX6Tw
MAUIといえばDependency Injection抜きにはあり得ないな。 Prismなどの過去資産の良いとこどり。
https://www.youtube.xxx/watch?v=xx1mve2AQr4&t=20s&ab_channel=JamesMontemagno
https://www.youtube.xxx/watch?v=xx1mve2AQr4&t=20s&ab_channel=JamesMontemagno
90デフォルトの名無しさん
2022/09/27(火) 10:36:50.71ID:rJ/evy9A2022/09/27(火) 12:26:13.28ID:LsBo1VKG
これ全部見ろってのか
92デフォルトの名無しさん
2022/09/27(火) 12:38:53.20ID:rJ/evy9A 動画見たくない人は
ディペンデンシーインジェクション(DI,依存性注入)について>>43のリンクが記事として紹介してるね
ディペンデンシーインジェクション(DI,依存性注入)について>>43のリンクが記事として紹介してるね
2022/09/27(火) 13:45:49.21ID:C6kpk8Bc
DIはjavaにくらべて分かりやすぎる
2022/09/27(火) 13:57:56.43ID:FjH6RqrQ
コンストラクタに渡すんじゃなくプロパティに直接注入してくれれば楽なんだがな
依存関係がループしてると戻ってこなくなるからだめなのか
依存関係がループしてると戻ってこなくなるからだめなのか
2022/09/28(水) 00:00:00.65ID:EwctE2IW
2022/09/28(水) 21:10:20.66ID:EwctE2IW
MAUIは動作確認の時にウインドウズ版でやれば
csファイルでもホットリロードボタンを押せばホットリロード効くんだな
Andoridしか見て無くて盲点だった・・・
csファイルでもホットリロードボタンを押せばホットリロード効くんだな
Andoridしか見て無くて盲点だった・・・
97.NET M HighSchool
2022/09/28(水) 22:07:10.17ID:UllJACrH >>96
その方法いいな
その方法いいな
98.NET M HighSchool
2022/09/28(水) 22:08:22.03ID:UllJACrH 動画作るときにiOS,Androidの各API調べたんだけどまだXamarin.なんだが…
MAUI.になるのはいつなんだろ?
まぁ使えるからいいんだが初心者にはわかりづらそう
MAUI.になるのはいつなんだろ?
まぁ使えるからいいんだが初心者にはわかりづらそう
2022/09/29(木) 08:08:43.68ID:LqUCxWz9
だからまだ未完成だって
なにせmono使ってるんだから
今は.net6に対応する作業をしてるんだろ
微妙に仕様違うからすぐには終わらんぞ
なにせmono使ってるんだから
今は.net6に対応する作業をしてるんだろ
微妙に仕様違うからすぐには終わらんぞ
100.NET M HighSchool
2022/09/29(木) 08:09:48.21ID:yzYmCLI1 >>99
monoが.NETなんじゃねぇの?
monoが.NETなんじゃねぇの?
101.NET M HighSchool
2022/09/29(木) 08:20:02.87ID:yzYmCLI1 DependencyService廻りは動画作った漢字だと[Assembly~Dependency]とかDependencyService.Get~みたいなのがなくなってるからより直感的にはなったイメージ
102デフォルトの名無しさん
2022/09/29(木) 08:38:49.67ID:l+1YeNb7 Xamarinはプラットフォームコードから共通コードを呼び出してたから共通コードからプラットフォーム呼び出しをするのにdependency injection必須だったんだよ
MAUIは単一プロジェクトで共通コードからプラットフォームコードを呼び出す方式に変わったからDI不要になった
Dependency Serviceはdependency injectionするサービスだからプラットフォーム呼び出しに関しては使わなくなったというだけだぞ
MAUIは単一プロジェクトで共通コードからプラットフォームコードを呼び出す方式に変わったからDI不要になった
Dependency Serviceはdependency injectionするサービスだからプラットフォーム呼び出しに関しては使わなくなったというだけだぞ
103.NET M HighSchool
2022/09/29(木) 09:00:08.43ID:yzYmCLI1104.NET M HighSchool
2022/09/29(木) 09:01:13.41ID:yzYmCLI1 てかここにいる詳しいやつコミュニティ作ったらかなり流行りそうなんだがどうなんだ?
105デフォルトの名無しさん
2022/09/29(木) 10:35:46.75ID:ohr3FfbV そんなんで流行るなら誰も苦労しねぇ
現実、こんなとこで数人が騒いでても世界には1mmも影響ないから
現実、こんなとこで数人が騒いでても世界には1mmも影響ないから
106.NET M HighSchool
2022/09/29(木) 10:38:41.89ID:yzYmCLI1 >>105
俺のお陰でTwitterでは.NET MAUI初めてみるかぁみたいに思ってくれてる人がいると思うだけで俺は救われてるわ
昨日はF#でMAUIやってみるか~って呟いている人にいや無理ですよって言ったらでも面白そうだからC#でやるか~って言ってくれたぞ
俺のお陰でTwitterでは.NET MAUI初めてみるかぁみたいに思ってくれてる人がいると思うだけで俺は救われてるわ
昨日はF#でMAUIやってみるか~って呟いている人にいや無理ですよって言ったらでも面白そうだからC#でやるか~って言ってくれたぞ
107デフォルトの名無しさん
2022/09/29(木) 12:08:32.53ID:IjsGczqS WPFからMAUIに移植するのは簡単?
108デフォルトの名無しさん
2022/09/29(木) 12:20:38.76ID:nA4Nikqb プロジェクトと移植する人によっては簡単だがまあ難しいと思っとけばいい
まずXAMLのパーツで使えないものや互換性のないものが結構あるからそれを作らなきゃいけない
WPFはウィンドウズだがMAUIはマルチプラットフォームなので複数のプラットフォームに対応したくなるがそうするとここでも足りないパーツが出てくる
マルチプラットフォーム故にウィンドウズの常識が通じないことや各プラットフォームに合わせたカスタマイズも必要になるからそこの勉強も必要
まずXAMLのパーツで使えないものや互換性のないものが結構あるからそれを作らなきゃいけない
WPFはウィンドウズだがMAUIはマルチプラットフォームなので複数のプラットフォームに対応したくなるがそうするとここでも足りないパーツが出てくる
マルチプラットフォーム故にウィンドウズの常識が通じないことや各プラットフォームに合わせたカスタマイズも必要になるからそこの勉強も必要
109デフォルトの名無しさん
2022/09/29(木) 12:25:56.21ID:DJ3PyQET >>107
XAMLデザイナーがないのに耐えないといけないぞ
XAMLデザイナーがないのに耐えないといけないぞ
110.NET M HighSchool
2022/09/29(木) 13:44:51.82ID:yzYmCLI1111デフォルトの名無しさん
2022/09/29(木) 16:10:11.86ID:YULTZ4NK .NET MAUIで一番期待してるのが
VS Codeでの開発なんだけど
やってみた人いる?感想どう?
VS for Macが使いにくすぎて早く移行したい
VS Codeでの開発なんだけど
やってみた人いる?感想どう?
VS for Macが使いにくすぎて早く移行したい
112.NET M HighSchool
2022/09/29(木) 16:18:33.18ID:yzYmCLI1 >>111
Windows機買おう!
Windows機買おう!
113デフォルトの名無しさん
2022/09/29(木) 18:17:11.39ID:FtZ39CAX >>111
Rider使えば
Rider使えば
114デフォルトの名無しさん
2022/09/29(木) 21:50:44.72ID:K7Abm/tm あれ? MAUIでは、Windows Machineではホットリロード使えない?
まっ iPadとAndroidで使えるから問題無いけど、WPFでホットリロード使っていると画面トリミング終了でリリースレベル完になるので速いんだよな。
Windowsも使えるといいな。
まっ iPadとAndroidで使えるから問題無いけど、WPFでホットリロード使っていると画面トリミング終了でリリースレベル完になるので速いんだよな。
Windowsも使えるといいな。
115デフォルトの名無しさん
2022/09/29(木) 21:56:23.76ID:k0xF75Cq116.NET M HighSchool
2022/09/29(木) 22:24:49.48ID:yzYmCLI1117デフォルトの名無しさん
2022/09/29(木) 22:30:14.81ID:nA4Nikqb118デフォルトの名無しさん
2022/09/29(木) 22:32:42.44ID:K7Abm/tm >>115
そう言われればテンプレートサラでは使えたよなと思って、新規にテンプ作って例のHello World! Click画面出してみたが、ホットリロード動いていない。
反映されることは反映されるが、iPadもAndroidもホットリロードツールバーが出ていないから超変。
今日、Ver17.3.5にアップデートしてからかも・・・
そう言われればテンプレートサラでは使えたよなと思って、新規にテンプ作って例のHello World! Click画面出してみたが、ホットリロード動いていない。
反映されることは反映されるが、iPadもAndroidもホットリロードツールバーが出ていないから超変。
今日、Ver17.3.5にアップデートしてからかも・・・
119.NET M HighSchool
2022/09/29(木) 22:33:13.42ID:yzYmCLI1 >>117
いや…これWindowsMachineにしてもグレーアウトは消えない…
いや…これWindowsMachineにしてもグレーアウトは消えない…
120デフォルトの名無しさん
2022/09/29(木) 22:33:50.62ID:gQAXwJ2p デバッグ環境選ぶ度に毎に入れ替わるよ
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- NY円、一時1ユーロ=180円台まで下落…1999年のユーロ導入以来初 [蚤の市★]
- 【外交】日中関係悪化、長期化の様相 2012年には自動車輸出80%減も ロイター★3 [1ゲットロボ★]
- 国内ホテル、既にキャンセルも 訪日客関連業界、事態見守る ★3 [蚤の市★]
- 橋下徹氏 外務省幹部の訪中受け「口だけ番長」へ痛烈指摘 「喧嘩は日本の完敗…なんとかっこ悪い日本か」★2 [冬月記者★]
- 「どうしようもない」 ため息つくアジアの玄関口 中国の訪日自粛で−福岡市 [蚤の市★]
- 「稼ぐのよ!」高市総理が電話ガチャ切りで伝えたこと 鈴木憲和農林水産大臣が国政報告会に出席 自身が目指す農政の方針語る [煮卵★]
- 『しんちゃんと岸田さん』 [175344491]
- 日本株、大暴落!!! [252835186]
- 識者「『フリーパレスチナ』とかイキってる連中が台湾の話になると『中国を怒らせるな!』ってなる。ほんと左翼の正義って薄っぺらい」 [279254606]
- 【超悲報】中国への武力行使、世論調査で「賛成」「どちらかといえば賛成」48.8% 「反対」「どちらかといえば反対」の44.2%を上回る [314039747]
- んなっても良いお🏡
- ( ・᷄ὢ・᷅ )お尻出して
