我創建了從0擴展,Android Studio中我得到這個wanrningAndroid的自定義視圖應該延伸AppCompatTextView
This custom view should extend android.support.v7.widget.AppCompatTextView instead
,我不能使用clickable
propertise,例如簡單的自定義視圖:
<com.myapp.test.Widgets.FontAwesome
android:layout_width="60dp"
android:layout_height="match_parent"
android:layout_marginRight="5dp"
android:background="?selectableItemBackground"
android:gravity="center"
android:clickable="@{()->presenter.clickOnSend()}"
android:text="@string/font_icon_post_message"
android:textColor="@color/gray_text_color"
android:textSize="40sp"/>
我得到這個錯誤clickable
propertise:
Error:(91, 46) Cannot find the setter for attribute 'android:clickable' with parameter type lambda on com.myapp.test.Widgets.FontAwesome.
我的自定義類:
import android.content.Context;
import android.graphics.Typeface;
import android.util.AttributeSet;
import android.widget.TextView;
public class FontAwesome extends TextView {
public FontAwesome(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
init();
}
public FontAwesome(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public FontAwesome(Context context) {
super(context);
init();
}
private void init() {
Typeface tf = Typeface.createFromAsset(getContext().getAssets(),
"fonts/fontawesome.ttf");
setTypeface(tf);
}
}
我怎樣才能解決這個問題呢?
'延長android.support.v7.widget.AppCompatTextView'是與TextView相同。 AppCompatTextView用於向舊版Android提供新功能的向後兼容性。 –
thois不是問題,你可以擴展你想要的任何東西。 Android Studio只會警告您,AppCompatTextView更適合用於兼容性。 –
該代碼仍然會運行....它只是一個警告 – rafsanahmad007