Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/210.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在listview中选择不同的行_Android_Listview_Row - Fatal编程技术网

Android 在listview中选择不同的行

Android 在listview中选择不同的行,android,listview,row,Android,Listview,Row,我有一个新闻应用程序,可以从web下载数据并在listview中显示,但我如何才能使第一行不同,更高,不同的布局和内容 这是主要的活动来源 public class Home extends Activity { // All static variables static final String URL = "http://dmb.site50.net/application.php?app_access_key=c4ca4238a0b923820dcc509a6f75849

我有一个新闻应用程序,可以从web下载数据并在listview中显示,但我如何才能使第一行不同,更高,不同的布局和内容

这是主要的活动来源

public class Home extends Activity {
    // All static variables
    static final String URL = "http://dmb.site50.net/application.php?app_access_key=c4ca4238a0b923820dcc509a6f75849b";
    // XML node keys
    static final String KEY_SONG = "song"; // parent node
    static final String KEY_ID = "id";
    static final String KEY_TITLE = "title";
    static final String KEY_ARTIST = "artist";
    static final String KEY_DURATION = "duration";
    static final String KEY_THUMB_URL = "thumb_url";

    public static final String TAG_NEWS = "news";
    public static final String TAG_ID = "id";
    public static final String TAG_TITLE = "title";
    public static final String TAG_STORY = "story";
    public static final String TAG_SH_STORY = "shorten";
    public static final String TAG_DATETIME = "datetime";
    public static final String TAG_AUTHOR = "author";
    public static final String TAG_IMG = "img";

    ListView list;
    LazyAdapter adapter;
    Button mBtnNaslovnica;
    private ViewSwitcher viewSwitcher;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
        setContentView(R.layout.main);

        mBtnNaslovnica = (Button) findViewById(R.id.mBtnNaslovnica);
        mBtnNaslovnica.setSelected(true);
        TextView txtView=(TextView) findViewById(R.id.scroller);
    txtView.setSelected(true);

        ImageButton mBtnRefresh = (ImageButton) findViewById(R.id.btnRefresh);
        mBtnRefresh.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                new LoadingTask().execute(URL);
            }
        });


            ArrayList<HashMap<String, String>> homeList = new ArrayList<HashMap<String, String>>();



                JSONObject jsonobj;
                try {
                    jsonobj = new JSONObject(getIntent().getStringExtra("json"));
                    JSONArray news = jsonobj.getJSONArray(TAG_NEWS);
                    for(int i = 0; i < news.length(); i++){
                        JSONObject c = news.getJSONObject(i);

                        // Storing each json item in variable
                        String id = c.getString(TAG_ID);
                        String title = c.getString(TAG_TITLE);
                        String story = c.getString(TAG_STORY);
                        String shorten = c.getString(TAG_SH_STORY);
                        String author = c.getString(TAG_AUTHOR);
                        String datetime = c.getString(TAG_DATETIME);
                        String img = c.getString(TAG_IMG);


                        // creating new HashMap
                        HashMap<String, String> map = new HashMap<String, String>();

                        // adding each child node to HashMap key => value
                        map.put(TAG_ID, id);
                        map.put(TAG_TITLE, title);
                        map.put(TAG_STORY, story);
                        map.put(TAG_IMG, img);
                        map.put(TAG_DATETIME, datetime);
                        map.put(TAG_AUTHOR, author);

                        // adding HashList to ArrayList
                        homeList.add(map);}
                } catch (JSONException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }






            list=(ListView)findViewById(R.id.list);

            // Getting adapter by passing xml data ArrayList
            adapter=new LazyAdapter(this, homeList);        
            list.setAdapter(adapter);


            // Click event for single list row
            list.setOnItemClickListener(new OnItemClickListener() {

                @Override
                public void onItemClick(AdapterView<?> parent, View view,int position, long id) {
                    String cur_title = ((TextView) view.findViewById(R.id.title)).getText().toString();
                    String cur_story = ((TextView) view.findViewById(R.id.einfo2)).getText().toString();
                    String cur_author = ((TextView) view.findViewById(R.id.einfo1)).getText().toString();
                    String cur_datetime  = ((TextView) view.findViewById(R.id.einfo)).getText().toString();
                    ImageView cur_img = (ImageView) view.findViewById(R.id.list_image);
                    String cur_img_url = (String) cur_img.getTag();

                    Intent i = new Intent("com.example.androidhive.CURENTNEWS");
                    i.putExtra("CUR_TITLE", cur_title);
                    i.putExtra("CUR_STORY", cur_story);
                    i.putExtra("CUR_AUTHOR", cur_author);
                    i.putExtra("CUR_DATETIME", cur_datetime);
                    i.putExtra("CUR_IMG_URL", cur_img_url);
                    startActivity(i);
                }
            });     
        }   

    public void loadPage(){

    }

    public void startNewActivity(){

    }
    public class LoadingTask extends AsyncTask<String, Object, Object>{
        XMLParser parser = new XMLParser();
        JSONParser jParser = new JSONParser();
        @Override
        protected Object doInBackground(String... params) {
            // TODO Auto-generated method stub
            String URL = params[0];
            JSONObject json = jParser.getJSONFromUrl(URL);
            //String xml = parser.getXmlFromUrl(URL); // getting XML from URL
             // getting DOM element
            return json;
        }

        protected void onPostExecute(Object result){
            Intent startApp = new Intent("com.example.androidhive.HOME");
            startApp.putExtra("json", result.toString());
            startActivity(startApp);
        }


    }



    }
公共类主页扩展活动{
//所有静态变量
静态最终字符串URL=”http://dmb.site50.net/application.php?app_access_key=c4ca4238a0b923820dcc509a6f75849b";
//XML节点密钥
静态最终字符串键\u SONG=“SONG”//父节点
静态最终字符串键\u ID=“ID”;
静态最终字符串键\u TITLE=“TITLE”;
静态最终字符串键\u ARTIST=“ARTIST”;
静态最终字符串键\u DURATION=“DURATION”;
静态最终字符串键\u THUMB\u URL=“THUMB\u URL”;
公共静态最终字符串标记_NEWS=“NEWS”;
公共静态最终字符串标记\u ID=“ID”;
公共静态最终字符串标记\u TITLE=“TITLE”;
公共静态最终字符串标记_STORY=“STORY”;
公共静态最终字符串标记_SH_STORY=“shorten”;
公共静态最终字符串标记_DATETIME=“DATETIME”;
公共静态最终字符串标记\u AUTHOR=“AUTHOR”;
公共静态最终字符串标记\u IMG=“IMG”;
列表视图列表;
懒散适配器;
按钮mBtnNaslovnica;
私人取景器取景器;
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
requestWindowFeature(窗口。功能\u无\u标题);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_全屏,WindowManager.LayoutParams.FLAG_全屏);
setContentView(R.layout.main);
mBtnNaslovnica=(按钮)findviewbyd(R.id.mBtnNaslovnica);
mBtnNaslovnica.setSelected(真);
TextView txtView=(TextView)findViewById(R.id.scroller);
txtView.setSelected(true);
ImageButton mBtnRefresh=(ImageButton)findViewById(R.id.btnRefresh);
mBtnRefresh.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
//TODO自动生成的方法存根
新建LoadingTask().execute(URL);
}
});
ArrayList homeList=新的ArrayList();
JSONObject jsonobj;
试一试{
jsonobj=新的JSONObject(getIntent().getStringExtra(“json”);
JSONArray news=jsonobj.getJSONArray(TAG_news);
for(int i=0;ivalue
地图放置(标签标识,标识);
地图放置(标签标题、标题);
地图放置(TAG_故事,故事);
地图放置(标签、IMG、IMG);
map.put(TAG_DATETIME,DATETIME);
map.put(TAG_AUTHOR,AUTHOR);
//将哈希列表添加到ArrayList
homeList.add(map);}
}捕获(JSONException e){
//TODO自动生成的捕捉块
e、 printStackTrace();
}
list=(ListView)findViewById(R.id.list);
//通过传递xml数据ArrayList获取适配器
adapter=新的LazyAdapter(这是homeList);
list.setAdapter(适配器);
//单击单个列表行的事件
list.setOnItemClickListener(新的OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
字符串cur_title=((TextView)view.findviewbyd(R.id.title)).getText().toString();
字符串cur_story=((TextView)view.findviewbyd(R.id.einfo2)).getText().toString();
字符串cur_author=((TextView)view.findviewbyd(R.id.einfo1)).getText().toString();
字符串cur_datetime=((TextView)view.findViewById(R.id.einfo)).getText().toString();
ImageView cur_img=(ImageView)view.findViewById(R.id.list_image);
字符串cur_img_url=(String)cur_img.getTag();
意图i=新意图(“com.example.androidhive.CURENTNEWS”);
i、 putExtra(“CUR_TITLE”,CUR_TITLE);
i、 putExtra(“CUR_故事”,CUR_故事);
i、 putExtra(“CUR_AUTHOR”,CUR_AUTHOR);
i、 putExtra(“CUR_DATETIME”,CUR_DATETIME);
i、 putExtra(“CUR_IMG_URL”,CUR_IMG_URL);
星触觉(i);
}
});     
}   
公共void加载页(){
}
公共无效startNewActivity(){
}
公共类LoadingTask扩展了AsyncTask{
XMLParser=新的XMLParser();
JSONParser jParser=新的JSONParser();
@凌驾
受保护对象doInBackground(字符串…参数){
//TODO自动生成的方法存根
字符串URL=params[0];
JSONObject json=jParser.getJSONFromUrl(URL);
//字符串xml=parser.getXmlFromUrl(URL);//从URL获取xml
//获取DOM元素
返回json;
}
受保护的void onPostExecute(对象结果){
Intent startApp=newintent(“com.example.androidhive.HOME”);
startApp.putE