Hello每个我都会在片段中添加此活动
此片段用于滑动菜单 此活动适用于Feed阅读器 但问题是如何在片段
中添加此活动代码谢谢大家;)
MainActivity
public class MainActivity extends Activity implements OnItemClickListener {
private static final String rssFeed = "http://softgriphost.esy.es/Android-Rss-software.xml";
List<Item> arrayOfList;
ListView listView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
listView = (ListView) findViewById(R.id.listview);
listView.setOnItemClickListener(this);
if (Utils.isNetworkAvailable(MainActivity.this)) {
new MyTask().execute(rssFeed);
} else {
showToast("No Network Connection!!!");
}
}
// My AsyncTask start...
class MyTask extends AsyncTask<String, Void, Void> {
ProgressDialog pDialog;
@Override
protected void onPreExecute() {
super.onPreExecute();
pDialog = new ProgressDialog(MainActivity.this);
pDialog.setMessage("Loading...");
pDialog.show();
}
@Override
protected Void doInBackground(String... params) {
arrayOfList = new NamesParser().getData(params[0]);
return null;
}
@Override
protected void onPostExecute(Void result) {
super.onPostExecute(result);
if (null != pDialog && pDialog.isShowing()) {
pDialog.dismiss();
}
if (null == arrayOfList || arrayOfList.size() == 0) {
showToast("No data found from web!!!");
MainActivity.this.finish();
} else {
// check data...
/*
* for (int i = 0; i < arrayOfList.size(); i++) { Item item =
* arrayOfList.get(i); System.out.println(item.getId());
* System.out.println(item.getTitle());
* System.out.println(item.getDesc());
* System.out.println(item.getPubdate());
* System.out.println(item.getLink()); }
*/
setAdapterToListview();
}
}
}
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
Item item = arrayOfList.get(position);
Intent intent = new Intent(MainActivity.this, DetailActivity.class);
intent.putExtra("url", item.getLink());
intent.putExtra("title", item.getTitle());
intent.putExtra("desc", item.getDesc());
startActivity(intent);
}
public void setAdapterToListview() {
NewsRowAdapter objAdapter = new NewsRowAdapter(MainActivity.this,
R.layout.row, arrayOfList);
listView.setAdapter(objAdapter);
}
public void showToast(String msg) {
}}
片段
public class PagesFragment extends Fragment {
public PagesFragment(){}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_pages, container, false);
return rootView;
}}
谢谢大家:)
答案 0 :(得分:0)
我不知道你刚才问的是什么,但通过查看代码并阅读你所写的内容,你的逻辑并不正确。您应该在活动中使用滑动菜单代码,因为它在应用程序的多个部分之间是通用的。
实现滑动菜单的方式取决于您,它可以位于活动布局中,也可以只是同一活动中的静态片段容器。
您的Feed阅读器应该是片段,因为它可以重复使用并在您想要的地方使用。片段背后的想法是,它们是屏幕的“部分”,可以在活动的任何地方使用,并且应该是自给自足的,这意味着无论你放置那个片段,它应该只是工作并做任何他想做的事情,没有任何额外的编码。阅读有关Activity和Fragments生命周期的官方android文档,值得一读,它解释了入门所需的几乎所有内容: http://developer.android.com/guide/components/fragments.html