public class UploadToServer extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_upload_to_server);
uploadButton = (Button)findViewById(R.id.uploadButton);
messageText = (TextView)findViewById(R.id.messageText);
up= new Upload(this);
uploadButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
dialog = ProgressDialog.show(UploadToServer.this, "", "Uploading file...", true);
new Thread(new Runnable() {
public void run() {
runOnUiThread(new Runnable() {
public void run() {
messageText.setText("uploading started.....");
}
});
up.uploadFile(uploadFilePath);
}
}).start();
}
});
我需要从另一个名为UPLOAD.ineed的类访问该类ui,以访问上述类中的对话框并显示吐司。我该怎么做。请帮我
public class Upload {
public Upload(UploadToServer context) {
context=context;}
context.runOnUiThread(new Runnable() {public void run() {
String msg = "yes";
context.messageText.setText(msg);
Toast.makeText(context, "File Upload Complete.",
Toast.LENGTH_SHORT).show();
}
}); }
那就是我尝试过的。好吧,我要做的就是打印Toast。但是当我尝试时,我得到了NULPOINT异常
您可以将Activity的一个实例传递给另一个类,然后使用该活动实例,可以在原始活动中调用showMyToast()方法。
class MyActivity extends Activity{
// activity methods etc..
public void showMyToast(String message){
runOnUiThread(new Runnable() {
@Override
public void run() {
// write code to show toast
Toast.makeText(getApplicationContext(), message,Toast.LENGTH_LONG).show();
}
});
}
class MyOtherClass{
MyActivity myActivity;
MyOtherClass(MyActivity myActivity){
this.myActivity=myActivity;
}
// To call the showMyToast() of Activiy do like this:
// myActivity.showMyToast("This is a toast");
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句