У меня проблема, мне нужен доступ к просмотрам в деятельности из службы. Я подумал, что хороший способ сделать это - передать контекст действия, а затем использовать его для доступа к представлениям. Тем не менее, когда я запускаю его, он выдает нулевую ошибку, означая, что объект (представление) является нулевым. Это код, я хотел бы знать, как это исправить:
public class Purchase extends AppCompatActivity {
private TextView purchaseAmount;
private Button but;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_purchase);
but = (Button) findViewById(R.id.makePurBut);
purchaseAmount = (TextView) findViewById(R.id.purchaseAmout);
Intent i = new Intent(Purchase.this, MyHostApduService.class);
MyHostApduService myHostApduService = new MyHostApduService(Purchase.this);
startService(i);
}
}
public class MyHostApduService extends HostApduService {
static Context context;
public MyHostApduService(Context context)
{
this.context = context;
}
public int onStartCommand(Intent intent, int flags, int startId) {
textView = (TextView)((Activity)context).findViewById(R.id.purchaseAmout);
but = (Button)((Activity)context).findViewById(R.id.makePurBut);
return flags;
}
}