我在标准类中调用getResources()
函数时遇到问题。所有导入必须在那里才能使用该功能。我需要扩展课程吗?
感谢您的直接帮助。
package com.example.helloandroid;
import android.app.Activity;
import android.content.ContentValues;
import android.content.Context;
import android.content.ContextWrapper;
import android.content.res.Resources;
import android.content.Intent;
import android.os.Bundle;
//import android.content.res.Resources;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
public class DbAdapter {
public DbAdapter() {
Resources res = getResources();//error: The method getResources() is undefined for the type DbAdapter
//also tyed context.getResources()
}
}
答案 0 :(得分:29)
getResouces
是Context的一种方法。
因此,您可以将上下文传递给DbAdapter构造函数并从中调用getResources
:
public DbAdapter(Context context) {
Resources res = context.getResources();//error: The method getResources() is undefined for the type DbAdapter
//also tied context.getResources()
}
答案 1 :(得分:1)
例如,如果您的适配器是ArrayAdapter,则可以使用:
ctx
答案 2 :(得分:0)
定义Context's
对象,然后在R.<Methods>
对象的帮助下调用所有context
。
例如:
Context ctx;
ctx.getResources().getString(R.string.Forgot_message);
上面的代码对我有用。