java如何使用layout从存储中加载XML layout。充气机?
如何通过传递布局从存储器中加载XML布局。充气器(XmlPullParser,null)
我的代码如下:
import 安卓.app.*;
import 安卓.os.*;
import 安卓.view.*;
import org.xmlpull.v1.*;
import 安卓.net.*;
import 安卓.content.*;
import java.io.*;
import 安卓.widget.*;
public class inflater extends Activity
{
View v;
XmlPullParser p;
String uri;
String filelocat;
FileReader fr;
InputStream fi;
@Override
protected void onCreate(Bundle savedInstanceState)
{
LinearLayout loi=findViewById(R.id.main2LinearLayout);
super.onCreate(savedInstanceState);
LayoutInflater li= LayoutInflater.from(this);
try
{
p=ok("/storage/emulated/0/AppProjects/layoutt/Layout/app/src/main/res/layout/main.xml");
Thread.sleep(4000);
}
catch (InterruptedException e)
{}
v=li.inflate(p,loi);
Toast.makeText(this,p.toString(),Toast.LENGTH_LONG).show();
setContentView(R.layout.main2);
}
private XmlPullParser ok(String uri){
XmlPullParser parser=null;
try
{
fi = new FileInputStream(new File(uri));
}
catch (FileNotFoundException e)
{}
try
{
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
factory.setNamespaceAware(true);
parser = factory.newPullParser();
parser.setInput(fi, null);
}
catch (XmlPullParserException e)
{}
return parser;
}
}
这条线解决了所有问题:
v=li.inflate(p,loi);
我也试过:
v=li.inflate(p,null);
他们都没有工作
如您所见,我试图传递一个格式正确的布局XML文件。我也同意了。我通过单击按钮从启动程序活动开始此活动。它不能正常工作
共 (0) 个答案