【发布时间】:2014-09-02 21:00:54
【问题描述】:
第二个 Activity 在主 Activity 中按下按钮时被调用:
public class Graphics extends ActionBarActivity {
DrawTheField v;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
v = new DrawTheField(this);
setContentView(v);
}
这是图形类:
public class DrawTheField extends View {
String FILEballpossession = "ballpossession.txt";
public DrawTheField(Context context) {
super(context);
// TODO Auto-generated constructor stub
}
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
super.onDraw(canvas);
// graphics stuff here
FileInputStream fins = null;
try {
fins = openFileInput(FILEballpossession);
byte[] reader = new byte[fins.available()];
while (fins.read(reader) != -1) {
ball_possession = new String(reader);
}
if (fins != null) {
fins.close();
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
文件ballpossession.txt 是在Main Activity java 中创建的。这 openFileInput 方法在 Activity 中可用,但在这个恰好是 View 的 DrawTheField 类中不可用。 我怎样才能“扩展视图”和“扩展活动”这个类?
【问题讨论】:
-
我想你正试图同时从两个超类中获取一些东西,那么你可以将扩展视图的类作为扩展活动的类内部的内部类,并将活动上下文作为反对您的视图类
-
我想这就是我想要做的......我只需要将文件读入扩展视图类中的字符串。
标签: android android-activity view extends