0

私はEditTextサブクラスを作成しています。編集可能な変数をスーパークラスに渡す必要があります。私はもともと私はエラーAndroid Editableは抽象的なものです。インスタンス化できません

'編集可能な' 抽象的であるのだ

private Editable unicodeText = new Editable(); 

みました

。インスタンス化できません

Googleでこのエラーを検索しても、役に立たない結果が返ってこなかったので、ここで答えを見つけました。

+2

これは有用な結果ではありませんでしたか? http://stackoverflow.com/questions/8519943/class-room-is-abstract-cannot-be-instantiated –

+0

@ cricket_007、私の質問は、「編集可能な」オブジェクトを作成する方法に関するもので、「できません」 「抽象的なものをインスタンス化する」問題。 [Androidの文字列を編集可能に変換する方法(http://stackoverflow.com/questions/13352531/android-how-can-i-convert-a-string-to-a-ititable)は、適切にマークされた複製。 – Suragch

+0

あなたの質問にはあなたの究極の目標は含まれていませんでした。抽象クラスをインスタンス化しようとするとエラーが表示されました。抽象クラスのすべてのサブクラスをそこからインスタンス化するための別個の質問をすることは、実行可能でも有益でもありません。もしあなたの質問が「編集可能なものに文字列をラップするための良いサブクラスは何か」と聞かれたはずですが、おそらく外部リソースの要求として話題にはならないでしょう。 – yshavit

答えて

0

Editableはインターフェイスであり、クラスではないため、インスタンス化することはできません。

インターフェイスはインスタンス化することはできません。インターフェイスはクラスによって実装することも、ほかのインターフェイスによって拡張することもできます。 (docs

しかし、クラスSpannableStringBuilderので、あなたが次の操作を行うことができEditableを実装します。右のトラックに私を設定するためのthis answer

private Editable unicodeText = new SpannableStringBuilder(); 

感謝を。

関連する問題