如何在 Xamarin Forms 應用程式中更改 Toast 的背景顏色?
我在 Android 11 上試過這段代碼:
Context context = Android.App.Application.Context;
string message = "Hello toast!";
ToastLength duration = ToastLength.Short;
Toast t = Toast.MakeText(context, message, duration);
System.Drawing.Color c = Xamarin.Forms.Color.Green;
ColorMatrixColorFilter CM = new ColorMatrixColorFilter(new float[]
{
0,0,0,0,c.R,
0,0,0,0,c.G,
0,0,0,0,c.B,
0,0,0,1,0
});
t.View.Background.SetColorFilter(CM);
t.Show();
但我收到以下錯誤:
System.NullReferenceException:“物件參考未設定為物件的實體。”
uj5u.com熱心網友回復:
自 Android 11 起,自定義 toast 視圖已被棄用。因此t.View,您的代碼中的值為 null。
就像官方檔案說的:
不推薦使用自定義 toast 視圖。應用程式可以使用 makeText(android.content.Context, java.lang.CharSequence, int) 創建標準文本 toast
您可以檢查以下情況:Toast.getView() 在 Android 11 (API 30) 上回傳 null
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/480358.html
