新闻资讯android版
又有一段时间没有更新自己的博客了,前段时间较忙,也没能抽时间来写博客。
这几天公司头让我熟悉一下环境,准备下周给公司做一个自己的新闻资讯,那么首先就要找一个类似的东西来研究一下,看搜狐新闻不错,就按照那有的模板开始做!
1.首先要解决排版,分为四部分的新闻内容,下面是属于此部分的新闻标题列表,上面的新闻分类使用四个Button,下面新闻标题的列表需要使用SrollView,可滚动的视图控件,里面的东西需要是用ListView列表,这样基本的布局已经确定下来,上面的图片是随便找的几个,到时候可以修改一下。
如有需要对ListView想进一步了解的,推荐博客:http://blog.csdn.net/xys289187120/article/details/6636139
其中主要的一个类:
package com.ifensi.news.information;import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;import org.json.JSONArray;
import org.json.JSONObject;import android.app.ListActivity;
import android.content.Context;
import android.content.Intent;
import android.graphics.PixelFormat;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.view.WindowManager;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.AdapterView.OnItemClickListener;public class NewsInformation extends ListActivity {/** Called when the activity is first created. */ListView mListView = null;ArrayList<Map<String, Object>> mData = new ArrayList<Map<String, Object>>();;private View mainLayout;private LayoutInflater inflater;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);// 窗口去掉标题requestWindowFeature(Window.FEATURE_NO_TITLE);// 窗口设置为全屏getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);// 设置窗口为半透明getWindow().setFormat(PixelFormat.TRANSLUCENT);inflater = (LayoutInflater) this.getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);mainLayout = inflater.inflate(R.layout.navigation_container, null);ButtomButtonOnClickListener buttomButtonOnClickListener = new ButtomButtonOnClickListener();mainLayout.findViewById(R.id.btn_guide).setOnClickListener(buttomButtonOnClickListener);mainLayout.findViewById(R.id.btn_model).setOnClickListener(buttomButtonOnClickListener);mainLayout.findViewById(R.id.btn_news).setOnClickListener(buttomButtonOnClickListener);mainLayout.findViewById(R.id.btn_search).setOnClickListener(buttomButtonOnClickListener);mainLayout.findViewById(R.id.btn_more).setOnClickListener(buttomButtonOnClickListener);// 获取json数据,等待接口实现String[] mListTitle = { "姓名", "性别", "年龄", "居住地", "邮箱", "姓名", "性别", "年龄", "居住地", "邮箱" };String[] mListStr = { "颜冬DIDO", "男", "25", "北京", "yandong_dido@126.com", "颜冬DIDO", "男", "25", "北京","yandong_dido@126.com" };this.getListViewContext(mListTitle, mListStr);}public String getJson() {String jsonString = "";try {JSONObject result = new JSONObject(jsonString);int num = result.length();JSONArray nameList = result.getJSONArray("name");int length = nameList.length();String aa = "";for (int i = 0; i < length; i++) {JSONObject obj = nameList.getJSONObject(i);aa = aa + obj.getString("name") + "|";}Iterator<?> it = result.keys();String aa2 = "";String bb2 = null;while (it.hasNext()) {bb2 = (String) it.next().toString();aa2 = aa2 + result.getString(bb2);}return aa;} catch (Exception e) {}return null;}public ListView getListViewContext(String mListTitle[], String mListStr[]) {mListView = getListView();int lengh = mListTitle.length;for (int i = 0; i < lengh; i++) {Map<String, Object> item = new HashMap<String, Object>();item.put("title", mListTitle[i]);item.put("text", mListStr[i]);mData.add(item);}SimpleAdapter adapter = new SimpleAdapter(this, mData, android.R.layout.simple_list_item_2, new String[] { "title","text" }, new int[] { android.R.id.text1, android.R.id.text2 });setListAdapter(adapter);mListView.setOnItemClickListener(new OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> adapterView, View view, int position, long id) {Intent intent = new Intent();intent.setClass(NewsInformation.this, NewsContext.class);Bundle bundle = new Bundle();bundle.putString("id", "aaaa");intent.putExtras(bundle);startActivity(intent);// Toast.makeText(TitleList.this,"您选择了标题:" +// mListTitle[position] + "内容:"+mListStr[position],// Toast.LENGTH_LONG).show();}});return mListView;}private class ButtomButtonOnClickListener implements OnClickListener {@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.btn_guide:// startGoogleMap();break;case R.id.btn_model:break;case R.id.btn_news:break;case R.id.btn_search:break;case R.id.btn_more:break;}}}public void setLastBottomButtomVisibility(int v) {mainLayout.findViewById(R.id.btn_more).setVisibility(v);}public void setContentView(int layoutResID) {View v = this.inflater.inflate(layoutResID, null);ViewGroup container = (ViewGroup) mainLayout.findViewById(R.id.container);container.addView(v);super.setContentView(mainLayout);}}
其中文件布局比较简单了:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical" android:layout_width="fill_parent"android:layout_height="fill_parent" android:gravity="top"><LinearLayout android:id="@+id/buttom_buttons"android:layout_width="fill_parent" android:layout_height="wrap_content"android:orientation="horizontal"><Button android:id="@+id/btn_guide" android:layout_width="wrap_content"android:layout_weight="1" android:layout_height="wrap_content"android:background="@drawable/button_guide" /><Button android:id="@+id/btn_news" android:layout_width="wrap_content"android:layout_weight="1" android:layout_height="wrap_content"android:background="@drawable/button_news" /><Button android:id="@+id/btn_model" android:layout_width="wrap_content"android:layout_weight="1" android:layout_height="wrap_content"android:background="@drawable/button_model" /><Button android:id="@+id/btn_search" android:layout_width="wrap_content"android:layout_weight="1" android:layout_height="wrap_content"android:background="@drawable/button_search" /><Button android:id="@+id/btn_more" android:layout_width="wrap_content"android:layout_weight="1" android:layout_height="wrap_content"android:background="@drawable/button_search" android:visibility="gone" /></LinearLayout><FrameLayout android:id="@+id/container"android:layout_weight="1" android:layout_width="fill_parent"android:layout_height="wrap_content"><ScrollView android:id="@+id/scrollView"android:layout_below="@+id/title_bar" android:layout_width="fill_parent"android:layout_height="fill_parent"></ScrollView></FrameLayout></LinearLayout>
2.剩下的就要对这些加一些基本的事件了:(1)点击进入查看新闻;(2)滑动屏幕显示不同新闻列表内容。
上面是比较基本的功能设计,这里的新闻列表是通过请求接口获得的JSON数据,这里接口还需等待同事完成了才能实现。
其中滑动屏幕事件是从某博客直接采用的,还没有完全嵌入到我的程序里面。
由于项目还没有完成,只是初步搭建,没全部实现。后续~~
新闻资讯android版相关推荐
- 仿头条新闻资讯dz模板/Discuz新闻资讯商业版GBK模板
Discuz仿今日头条模板,Discuz新闻资讯商业版GBK模板.顾名思义,头条新闻资讯模板,适合做资讯类网站,喜欢该风格的朋友可以下载看看. 基础安裝 1后台-门户网-频道栏目-添加频道: 2搜索结 ...
- 仿头条新闻资讯dz模板 Discuz新闻资讯商业版GBK模板源码
Discuz仿今日头条模板,Discuz新闻资讯商业版GBK模板,是dz的模板哈,要在dz里面用. 顾名思义,头条新闻资讯模板,适合做资讯类网站,喜欢该风格的朋友可以下载看看. 1.模板版本支持:di ...
- 新版Discuz仿今日头条新闻资讯商业版模板源码
正文: Discuz仿今日头条模板,Discuz新闻资讯商业版GBK模板.顾名思义,头条新闻资讯模板,适合做资讯类网站,喜欢该风格的朋友可以自行去体验. 1.模板版本支持:discuzx3.0版本,d ...
- 百度新闻android客户端,百度新闻进驻Android版客户端 全球最大移动中文新闻平台出炉...
网络信息浩如烟渺,新闻更新更是以秒计算.如何才能一网打尽新闻资讯,并从中迅速找到对自己有价值的资讯信息?近日,随着全球最大的中文新闻平台--百度新闻正式推出Android版客户端,Android手机用 ...
- 听新闻学英语android版,听新闻学英语
本应用为目前为止最全.最多和更新最快,同时覆盖初级.中级及进阶英语学习者的 VOA BBC CNN PBS 等英语节目的RSS增强型听力练习订阅器.到 2019年止总计有 7800 余篇文章,文章每天 ...
- 新闻类APP模板详解(android版)
1.概述 本文将介绍一个android版新闻类app模板,是本人整合了网上各类资源后整理出来的,希望对大家有所帮助! iOS版新闻类app模板详见: 新闻类APP模板详解(iOS版) 本模板app截图 ...
- 帝国cms华北新闻网模板php地方门户新闻网站源码带采集,帝国CMS新闻资讯-地方门户网站模板(带手机版)...
点击查看模板演示网站(因演示站服务器运行有点慢,请多等待一会) 点击进入手机网站效果预览(用支持html5浏览器火狐或者谷歌预览),或者直接用手机扫一扫进入手机演示站 该新闻资讯门户网采用帝国CMS管 ...
- 响应式瀑布流布局新闻资讯技术博客织梦模板/DedeCMS自适应手机版游戏新闻网站源码下载
响应式瀑布流布局新闻资讯技术博客织梦模板,DedeCMS自适应手机版游戏新闻网站源码下载.本套织梦模板采用织梦最新内核开发的模板,这款模板使用范围广,不仅仅局限于一类型的企业,游戏新闻.游戏博客类的网 ...
- 高仿砍柴网自媒体新闻资讯网站源码(织梦DEDE内核+手机WAP版)
高仿砍柴网自媒体新闻资讯网站源码(织梦DEDE内核+手机WAP版)下载地址: http://download.csdn.net/detail/chenhao0568/9312019#comment 安 ...
最新文章
- 如何使用TensorCores优化卷积
- access 打印预览 代码_PDFFactory pro虚拟打印机下载-PDFFactory官方版下载
- 【JAVA语法】03Java-继承性
- Linux安装与硬盘分区
- 基于开源流程引擎Activiti5的工作流开发平台BPMX3
- 都客仿站系列教程四:javascript入门
- python安装多久_python安装与使用
- Flutter MaterialButton组件详细概述
- 大数据助力“互联网+政务服务”发展
- Python程序员都会喜欢的6个库
- SWAT模型中土壤水文分组的一些思考
- 模糊综合评价法——解决评价指标模糊、难以量化的问题
- 美国篮球巨星科比坠机去世 年仅41岁
- 传祺gac6480_传祺gs82020款,传祺GAC6480J2F5
- 張學友 - Private Corner 新专辑1.29
- 多少道防线才能挡住顶尖黑客?
- 系统问题导致的笔记本部分按键失灵
- 当技术重构遇上DDD,如何实现业务、技术双赢?
- AAC(高级音频编码)帧格式及编码介绍
- 人体分析Demo-百度API
热门文章
- python金融大数据分析师工资待遇_请问数据分析师这个工作怎么样,是否值得成为努力方向?...
- mac-python包安装错误 [Errno 1] Operation not permitted: '/var/folders/5n/vbm997m56xg3kw67y6bccn2m0000gn/T
- 常用的推挽输出、开漏输出、上拉输入
- 计算机打字测速,5款打字测速软件分享,打字练习、测速两不误
- 1u服务器支持的显卡体积,1u服务器加独立显卡(1u服务器装显卡)
- matlab中int函数的用法
- [日常]mov文件转换为gif
- php文件断点上传文件,php大文件上传支持断点上传
- MySql8.0安装教程,细致教学
- Linux添加硬盘并挂载(超细致)