DynamicDrawableSpan 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
一個將所附文字替換成 Drawable 可以與底部或周圍文字基線對齊的跨度。
[Android.Runtime.Register("android/text/style/DynamicDrawableSpan", DoNotGenerateAcw=true)]
public abstract class DynamicDrawableSpan : Android.Text.Style.ReplacementSpan
[<Android.Runtime.Register("android/text/style/DynamicDrawableSpan", DoNotGenerateAcw=true)>]
type DynamicDrawableSpan = class
inherit ReplacementSpan
- 繼承
- 衍生
- 屬性
備註
一個將所附文字替換成 Drawable 可以與底部或周圍文字基線對齊的跨度。
對於從各種來源(、Bitmap、資源 id 或 Drawable)構建可繪製的實作,請使用 Uri。ImageSpan
一個簡單的實作 DynamicDrawableSpan 是利用資源繪製的可繪製物件,看起來像這樣:
class MyDynamicDrawableSpan extends DynamicDrawableSpan {
private final Context mContext;
private final int mResourceId;
public MyDynamicDrawableSpan(Context context, @DrawableRes int resourceId) {
mContext = context;
mResourceId = resourceId;
}
{@literal @}Override
public Drawable getDrawable() {
Drawable drawable = mContext.getDrawable(mResourceId);
drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());
return drawable;
}
}
這個類別可以用來這樣:
SpannableString string = new SpannableString("Text with a drawable span");
string.setSpan(new MyDynamicDrawableSpan(context, R.mipmap.ic_launcher), 12, 20, Spanned
.SPAN_EXCLUSIVE_EXCLUSIVE);
<img src=“https://developer.android.com/reference/android/images/text/style/dynamicdrawablespan.png ” /><figcaption>用可繪圖取代文字。</圖解>
的 android.text.style.DynamicDrawableSpanJava 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
建構函式
| 名稱 | Description |
|---|---|
| DynamicDrawableSpan() |
建立 |
| DynamicDrawableSpan(Int32) |
根據垂直對齊來建立 。 |
| DynamicDrawableSpan(IntPtr, JniHandleOwnership) |
用於建立 JNI 物件受管理表示的建構器;由執行時呼叫。 |
屬性
| 名稱 | Description |
|---|---|
| Class |
回傳此 |
| ContentDescription |
提供此替代Span的簡要說明,用於無障礙支援。 (繼承來源 ReplacementSpan) |
| ContentDescriptionFormatted |
提供此替代Span的簡要說明,用於無障礙支援。 -或- 將特定內容描述設定為 ReplacementSpan。 (繼承來源 ReplacementSpan) |
| Drawable |
你的子類別必須實作這個方法來提供位圖 |
| Handle |
底層 Android 實例的帳號。 (繼承來源 Object) |
| JniIdentityHashCode |
取得由互通執行時指派給此 Java 對等端的身份雜湊碼。 (繼承來源 Object) |
| JniManagedPeerState |
一個將所附文字替換成 |
| JniPeerMembers |
一個將所附文字替換成 |
| MVerticalAlignment | |
| PeerReference |
取得這個 Java 節點的 JNI 物件參考。 (繼承來源 Object) |
| ThresholdClass |
此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。 |
| ThresholdType |
此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。 |
| Underlying |
對大多數 CharacterStyles 回傳「this」,但對於由 |
| VerticalAlignment |
回傳該跨度的垂直對齊,為 , |
方法
明確介面實作
| 名稱 | Description |
|---|---|
| IJavaPeerable.Disposed() |
一個將所附文字替換成 |
| IJavaPeerable.Finalized() |
一個將所附文字替換成 |
| IJavaPeerable.JniObjectReferenceControlBlock |
一個將所附文字替換成 |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
一個將所附文字替換成 |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
一個將所附文字替換成 |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
一個將所附文字替換成 |
| IJavaPeerable.UnregisterFromRuntime() |
一個將所附文字替換成 |
擴充方法
| 名稱 | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
取得實例 |
| JavaAs<TResult>(IJavaPeerable) |
試著強制 |
| JavaCast<TResult>(IJavaObject) |
執行 Android 執行時間檢查的類型轉換。 |
| JavaCast<TResult>(IJavaObject) |
一個將所附文字替換成 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
試著強制 |