android做功能和写页⾯,如何⽤Androidstudio开发⼀个实现基
本功能的新闻a。。。
⼀、系统需求分析
启动程序后,通过登陆注册进⾏程序,能够进⾏新闻资讯的实时更新,点击新闻可以查看新闻的详细内容,在详情页点击收藏,能够将新闻添加到收藏列表中,再次点击,取消收藏,并可以通过个⼈信息页⾯设置个⼈的信息。
功能需求:
(1) 登陆注册
(2) 获取和更新新闻
(3) 收藏新闻
(4) 修改个⼈信息
应⽤界⾯:
⼆、系统总体设计
2.1 系统整体结构
源代码⽂件结构图:
2.2 数据存储设计2.2.1⽤户信息E-R图
2.2.2 新闻数据E-R图
2.2.3 收藏数据E-R图
三、系统详细设计
3.1 注册功能
⽤户输⼊⽤户名,邮箱和密码,遍历⽤户表,若是⽤户名已存在或邮箱已注册,提醒⽤户重新输⼊,
否则注册成功,返回登陆页⾯3.2 登陆功能
将⽤户输⼊的⽤户名和密码,与数据库存储的⽤户表对⽐,完全正确则进⼊新闻页⾯
3.3 查看新闻列表
页⾯初始化时,向服务器请求数据,对请求到的的json数据进⾏解析,并包装成List,最后展⽰在新闻列表页⾯
3.4 新闻详情页⾯
展⽰新闻详情,增加⼀个收藏按钮,实现收藏新闻和取消收藏的功能,同步更新数据库
3.5 个⼈信息页⾯
实现修改个⼈信息,包括性别、居住城市和个性签名
3.6 我的收藏页⾯
展⽰收藏的新闻,点击可以查看新闻详情,并取消收藏
四、系统实现
4.1 注册功能
通过LitePal操作数据库,遍历⽤户表,判断⽤户名和密码是否正确
users = DataSupport.findAll(User.class);
register.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
for(User user: users){
if (Text().toString().Name())||
flag = false;
break;
}
}
if (flag){
User user = new User();
//开始组装数据
user.Text().toString());
user.Text().toString());
user.Text().toString());
//保存数据
user.save();
Toast.makeText(Register.this, "注册成功", Toast.LENGTH_SHORT).show();
finish();
}else {
Toast.makeText(Register.this, "⽤户名或邮箱已存在!", Toast.LENGTH_SHORT).show(); }
}
});
4.2 登陆功能
//⽤户名和密码
name = (EditText) findViewById(R.id.login_name);
pass = (EditText) findViewById(R.id.login_password);
//登陆验证
Button login = (Button) findViewById(R.id.login_button);
login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
List users = DataSupport.select("name","password").find(User.class);
if (!(TextUtils.Text().toString()))&&
!(TextUtils.Text().toString()))){
for (User user:users){
if (Text().toString().Name())
&& Text().toString().Password())){
Toast.makeText(MainActivity.this, "登陆成功", Toast.LENGTH_SHORT).show();
flag = false;
Intent intent = new Intent(MainActivity.this,Index.class);
intent.putExtra("username",Text().toString());
startActivity(intent);
}
}
if (flag){
Toast.makeText(MainActivity.this, "账户或密码错误!", Toast.LENGTH_SHORT).show(); }
}else {
alertdialog使用方法
Toast.makeText(MainActivity.this, "账号密码不能为空", Toast.LENGTH_SHORT).show(); }
}
});
/
/注册跳转
Button main_register = (Button) findViewById(R.id.main_register_button);
main_register.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this,Register.class);
startActivity(intent);
}
});
}
4.3 查看新闻列表
4.3.1新闻列表的获取
//新闻列表的获取
lvNews = (ListView)findViewById(R.id.lvNews);
dataList = new ArrayList();
adapter = new NewsAdapter(this, dataList);
lvNews.setAdapter(adapter);
//点击列表项跳转页⾯
lvNews.setOnItemClickListener(new AdapterView.OnItemClickListener() {

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。