更新
使内部类'静态'修复它
请帮我看看下面的错误是什么。我在一个实现OnKeyListener的活动中有一个自定义的EditText。它被实现为Activity
的内部类我将普通TickerEditText覆盖到父EditText的原因是因为将来我可能会修改EditText并且还希望始终将OnKeyListener附加到它。
我不想在Activity的onCreate()中执行此操作。
代码编译正常,但是当应用程序启动并膨胀视图时,我遇到了运行时错误。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<view
class="com.example.android.ticker.TickerActivity$TickerEditText"
android:id="@+id/tickerText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="Something !!"
/>
<com.example.android.ticker.customListView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/tickerListView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
style="@style/customListView"
android:scrollbars="vertical"
android:listSelector="@drawable/list_selector"
/>
</LinearLayout>
用法 公共类TickerActivity扩展了Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.ticker);
/** Get Reference to UI objects */
mTickerListView = (TickerListView)findViewById(R.id.tickerListView);
mTickerEditText = (EditText)findViewById(R.id.tickerText);
...
}
...
...
...
...
public class TickerEditText extends EditText implements OnKeyListener {
public TickerEditText(Context context) {
super(context);
}
public boolean onKey(View v, int keyCode, KeyEvent event) {
if(event.getAction() == KeyEvent.ACTION_DOWN)
if(keyCode == KeyEvent.KEYCODE_ENTER) {
//something
return true;
}
return false;
}
提前致谢
答案 0 :(得分:0)
使内部类'静态'修复它
还将其作为单独的类移动并使用它进行调用