上次我们说到了对listview控件内容的控制,这次我要实现的是列表的点击事件,就是点击后会跳转到其他页面,这就类似于你看今日头条,找到一个喜欢的内容然后点进去出现界面。基本上没有大的变动,我还是把所有代码附上

这个新增加的MainActivity2Activity就是实现跳转后的页面的,对应的xml也是跳转后页面布局内容

MainActivity2Activity:

package com.example.lenovo.myapplication;import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;public class MainActivity2Activity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main_activity2);}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.menu_main_activity2, menu);return true;}@Overridepublic boolean onOptionsItemSelected(MenuItem item) {// Handle action bar item clicks here. The action bar will// automatically handle clicks on the Home/Up button, so long// as you specify a parent activity in AndroidManifest.xml.int id = item.getItemId();//noinspection SimplifiableIfStatementif (id == R.id.action_settings) {return true;}return super.onOptionsItemSelected(item);}
}

对应xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"android:paddingBottom="@dimen/activity_vertical_margin"tools:context="com.example.lenovo.myapplication.MainActivity2Activity"><TextView android:text="@string/hello_world" android:layout_width="wrap_content"android:layout_height="wrap_content" /></RelativeLayout>

Adpator:

package com.example.lenovo.myapplication;import android.app.Activity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.LinearLayout;
import android.widget.TextView;
import java.util.ArrayList;
/*** Created by lenovo on 2021/10/18.*/
public class Adpator extends BaseAdapter{Activity aact;ArrayList<News> mmlist=null;public Adpator(Activity act,ArrayList<News> list){this.aact=act;this.mmlist=list;}@Overridepublic int getCount() {return mmlist.size();}@Overridepublic Object getItem(int position) {return null;}@Overridepublic long getItemId(int position) {return 0;}@Overridepublic View getView(int position, View convertView, ViewGroup parent) {LayoutInflater inflater=aact.getLayoutInflater();LinearLayout item_view=(LinearLayout)inflater.inflate(R.layout.list,null);TextView text1=(TextView)item_view.findViewById(R.id.text1);TextView text2=(TextView)item_view.findViewById(R.id.text2);text1.setText(mmlist.get(position).title);text2.setText(mmlist.get(position).content);return item_view;}
}

对应xml list:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="horizontal"android:layout_width="match_parent"android:layout_height="150dp"><LinearLayoutandroid:layout_width="150dp"android:layout_height="150dp"><ImageViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:src="@drawable/bg_catagories_def"/></LinearLayout><LinearLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="okokokoko"android:id="@+id/text1"android:textColor="#fe20"android:textSize="30sp"/><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="opopopopo"android:id="@+id/text2"android:textColor="#ff31ee9b"android:textSize="30sp"/></LinearLayout>
</LinearLayout>

Mainactivity:

package com.example.lenovo.myapplication;import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ListView;import java.util.ArrayList;public class MainActivity extends Activity {ArrayList<News> m_list=new ArrayList<News>();private void initdata(){m_list.clear();News n1=new News();n1.title="先获得随机获得随机";n1.content="还记得上飞机";m_list.add(n1);News n2=new News();n2.title="先获得随机获得随机";n2.content="还记得上飞机";m_list.add(n2);News n3=new News();n3.title="先获得随机获得随机";n3.content="还记得上飞机";m_list.add(n3);News n4=new News();n4.title="先获得随机获得随机";n4.content="还记得上飞机";m_list.add(n4);}@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);ListView listView=(ListView)findViewById(R.id.list);initdata();Adpator adpator=new Adpator(this,m_list);listView.setAdapter(adpator);listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> parent, View view, int position, long id) {if(position==0){show();}}});}private void show(){Intent i=new Intent(this,MainActivity2Activity.class);startActivity(i);}}

对应xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_height="match_parent"android:layout_width="match_parent"android:orientation="vertical"><LinearLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"><ListViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:id="@+id/list"></ListView></LinearLayout>
</LinearLayout>

News:


package com.example.lenovo.myapplication;/*** Created by lenovo on 2021/10/18.*/
public class News {public int id=0;String title="";String content="";}

运行:
点击第一个后跳转

Android关于ListView的使用(三)相关推荐

  1. Android之ListView(三)

    文章目录 activity_main.xml chatting_item_msg_text_left.xml chatting_item_msg_text_right.xml ChatActivity ...

  2. Android 利用ListView制作带竖线的多彩表格

    1.listview与GridView 其实Android本身是有表格控件(GridView)的,但是GridView的每一列的宽度被限定为一样宽,有时设计表格时,列宽不可能为同一宽度,所有可以用Li ...

  3. Android之ListView异步加载图片且仅显示可见子项中的图片

    折腾了好多天,遇到 N 多让人崩溃无语的问题,不过今天终于有些收获了,这是实验的第一版,有些混乱,下一步进行改造细分,先把代码记录在这儿吧. 网上查了很多资料,发现都千篇一律,抄来抄去,很多细节和完整 ...

  4. Android 实现ListView圆角效果

     今天,简单讲讲如何实现使用  ListView显示圆角. 其实代码很多都可以解决,这是在网上搜索的一个解决的代码. 无论是网站,还是APP,人们都爱看一些新颖的视图效果.直角看多了,就想看看 ...

  5. Android 自定义 ListView 显示网络上 JSON 格式歌曲列表

    本文内容 环境 项目结构 演示自定义 ListView 显示网络上 JSON 歌曲列表 参考资料 本文最开始看的是一个国人翻译的文章,没有源代码可下载,根据文中提供的代码片段,自己新建的项目(比较可恶 ...

  6. 宏锦软件 Android 的 ListView 使用详解

     宏锦软件爱好者在开发Android软件时,对ListView的使用有点陌生,于是翻了许多资料,这里给大家一份比较好的教程,希望有用. 在android开发中ListView是比较常用的组件,它以 ...

  7. Android开发笔记(一百三十五)应用栏布局AppBarLayout

    应用栏布局AppBarLayout Android5.0推出工具栏Toolbar用来替代ActionBar,灵活性和易用性大大增强,有关Toolbar的详细介绍参见< Android开发笔记(一 ...

  8. Android杂谈--ListView之BaseAdapter的使用一(转)

    BaseAdapter是直接继承自接口类Adapter的,使用BaseAdapter时需要重写很多方法      BaseAdapter与其他Adapter有些不一样,其他的Adapter可以直接在其 ...

  9. Android中ListView分页加载数据

    熟悉Android的朋友们都知道,不管是微博客户端还是新闻客户端,都离不开列表组件,可以说列表组件是Android数据展现方面最重要的组件,我们今天就要讲一讲列表组件ListView加载数据的相关内容 ...

最新文章

  1. Android SDK Manager 的介绍
  2. 1.内存优化(一)内存泄漏
  3. SSH-Auditor:一款SSH弱密码探测工具
  4. Web 第二阶段Java Script (续)
  5. bigpipe提升网站响应速度
  6. 疫情期间,千万级系统宕机N次,老板撂下狠话:没法把性提升10倍,全员解雇!...
  7. python经典100例(21-40)
  8. 逐句深扒 Apache 许可协议原文,一文看懂!
  9. 「べきだ」、「わけだ」、「はずだ」在使用中,都有“ 应该 ”的含意
  10. linux 浏览器缓存目录在哪里找,火狐浏览器缓存文件在什么位置?缓存文件位置分享...
  11. 领航致远_李腾飞老师javascript_html_css视频教程
  12. 研究发现多种精神疾病和肠道微生物群的紊乱有关
  13. 问题描述】原始题目:一只公鸡 5 文钱,一只母鸡 3 文钱,三只小鸡 1 文钱,用 100 文钱买 100 只鸡,请问公鸡,母鸡,小鸡各多少只?(推广)
  14. 蚂蚁森林中能量自动收取
  15. hive 读取 map的value
  16. oracle静默安装报错,静默安装Oracle11gR2 [FATAL] [INS-32015]报错
  17. PAT乙级题库踩坑实录
  18. 女生无法拒绝的表白拼图
  19. java 可以继承不同包的类吗_深入理解JAVA中的跨包继承
  20. 直插DC插头内部分解,哪个是正哪个是负

热门文章

  1. 用std::string::compare()用法
  2. 西安电子科技大学通院811电院821考研上岸经验分享(三)
  3. 他把闲鱼APP长列表流畅度翻了倍(良心教程)
  4. 华为鸿蒙拐骗图片,华为神秘新机曝光 6.2寸2K屏+麒麟950
  5. 纯HTML,CSS实现点击图片,显示内容
  6. php遍历dom节点,详解PHP使用DOMDocument类遍历、增加、修改、删除XML节点操作
  7. 铁路信号轨道电路介绍及故障分析
  8. 小米提前批一二面面经
  9. 苹果内购小结 - iOS
  10. go与python作为后端_golang和python有什么区别?_后端开发