需要一些帮助,我有一个登录页面从那里一个意图传递到下一个验证后,下一页是预定义的布局(可滑动的选项卡)现在我知道如何在不同的滑动上创建不同的布局,并将有每个刷卡都有不同的java文件,java文件是
import android.app.Activity;
import android.database.Cursor;
import android.os.Bundle;
import android.provider.Settings.Global;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
/**
* @author sanketh
*
*/
public class profile extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.profile, container, false);
prof p1=new prof();
p1.setname(Gloabal.getemail());
return rootView;
}
}
这段代码工作正常没有任何问题,但现在我想使用textview,edittext等布局对象来设置文本,我不能这样做因为我的类没有扩展活动类所以我创建了一个扩展的类在同一个文件中的活动,但是我怎么能使这个类也运行上面提供的类
class prof extends Activity
{
TextView t1;
datab dat;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.profile);
t1=(TextView)findViewById(R.id.widget35);
}
prof()
{
//setname(Gloabal.getemail());
}
public void setname(String e)
{
Toast.makeText(Gloabal.getcontext(), "hello", Toast.LENGTH_LONG).show();
t1.setText("sanketh");
/*Cursor cur=dat.getname(e);
cur.moveToFirst();
*/
}
/*@Override
public void onStart()
{
super.onStart();
dat=new datab(this);
setname(Gloabal.getemail());
}*/
}
这个额外添加的类,所以我不能在页面上显示一些内容
答案 0 :(得分:2)
您可以使用this.getActivity()
从片段中访问活动答案 1 :(得分:0)
试试这个..
TextView t1;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.profile, container, false);
t1=(TextView) rootView.findViewById(R.id.widget35);
t1.setText("sanketh "+Gloabal.getemail());
return rootView;
}
答案 2 :(得分:0)
覆盖Fragment中的onAttach()方法并将Activity保存到任何变量。 例如:
public class profile extends Fragment {
private Activity myActivity = null;
@Override
public void onAttach (Activity activity){
this.myActivity = activity;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.profile, container, false);
prof p1=new prof();
p1.setname(Gloabal.getemail());
return rootView;
}
}
之后您可以使用此活动。 例如
TextView myTextView = new TextView(myActivity)