cmd—>ipconfig
找到自己的ip地址:
WebView 将web端网页添加到手机客户端,主要用于Android和H5用户的交互
- Github上传项目
有了自己的账号以后,就可以进行登录,开始创建一个新的项目
创建一个新的项目,填写项目名称,描述
创建完成之后,跳转到下面的页面,下面红框中的网址要记住,在后面上传代码的时候需要使用
接下来,我们需要先下载Git,这里最好下载最新版本的Git,这里附上我下载的Git2.6.2的网址:https://git-scm.com/downloads,安装时如果没有特殊需求,一直下一步就可以了,安装完成之后,双击打开Git Bash
出现以下界面:
第一步:cd进入你放项目文件的地址,我的地址在C:\Users\LshyER\Desktop\APP\BeijingNews
第二步:输入git init
如下图所示,这个意思是在当前项目的目录中生成本地的git管理(会发现在当前目录下多了一个.git文件夹)
第三步:输入git add .
这个是将项目上所有的文件添加到仓库中的意思,如果想添加某个特定的文件,只需把.换成这个特定的文件名即可。
第四步输入git commit -m “first commit”,表示你对这次提交的注释,双引号里面的内容可以根据个人的需要
改。
这里如果出现以下内容,则需要你输入自己的账号或名字
用上面提示的代码输入自己的邮箱或名字
再输入git commit -m "first commit"时就会成功
第五步输入git remote add origin https://自己的仓库url地址(上面有说到) 将本地的仓库关联到github上,
这里我输入的是git remote add origin https://github.com/liusihuijiayou/News.git
最后一步,输入git push -u origin master,这是把代码上传到github仓库的意思。
执行完后,如果没有异常,会等待几秒,然后跳出一个让你输入Username和Password 的窗口,你只要输人github的登录账号和密码就行了。
- 第二次git
原文链接:https://blog.csdn.net/m0_37725003/article/details/80904824
- SildingMeau的使用
1、下载
2、导入库
3、关联库
4、当前的MainActivity继承
- XUtil 初始化
基本功能:数据库的操作,联网请求,图片请求,初始化控件
1、导入
File—>New—>Import Module
2、关联库
app—>Open Module Settings
3、在Application中初始化xUtils3
public class BeijingNewApplication extends Application {
/*所有组件被创建之前执行*/
@Override
public void onCreate() {
super.onCreate();
//初始化
x.Ext.setDebug(true);
x.Ext.init(this);
}
}
注意:一定要在清单文件中配置
<application
android:name=".BeijingNewApplication"
android:allowBackup="true"
android:icon="@mipmap/news"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
4、使用xUtils注解方式初始化控件
- 左侧菜单的实现(点击变色)
package android.pims.com.beijingnews.fragment;
/*
* 作者:刘思慧 on 2019/10/07
* 微信号:lsh666888
* QQ号:1252353927
* 作用:左侧菜单的Fragment
* */
import android.graphics.Color;
import android.pims.com.beijingnews.R;
import android.pims.com.beijingnews.activity.MainActivity;
import android.pims.com.beijingnews.base.BaseFragment;
import android.pims.com.beijingnews.base.BasePager;
import android.pims.com.beijingnews.domain.NewsCenterPagerBear;
import android.pims.com.beijingnews.utils.DensityUtil;
import android.util.Log;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;
import java.util.List;
public class LeftmeauFragment extends BaseFragment {
private List<NewsCenterPagerBear.DataBean> data;
private LeftmenuFragmentAdapter adapter;
private ListView listView;
private int prePosition; //记录点击位置,listview点击变红
@Override
public View initView() {
//左侧菜单被初始化了
listView =new ListView(context);
//距离顶部40
listView.setPadding(0,DensityUtil.dio2x(context,40),0,0);
//设置分割线高度为0
listView.setDividerHeight(0);
//设置透明
listView.setCacheColorHint(Color.TRANSPARENT);
//设置按下listView的item不变色
listView.setSelector(android.R.color.transparent);
//设置item的点击事件
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
//1、记录点击的位置
prePosition=i;
adapter.notifyDataSetChanged();// getCount--->getView
//2、把左侧菜单关闭
MainActivity mainActivity= (MainActivity) context;
mainActivity.getSlidingMenu().toggle();//关<-->开
//3、切换到对应的详情页面,新闻详情页面、专题详情页面。。。
}
});
return listView;
}
public void initData(){
super.initData();
}
/*
* 接受数据
* */
public void setData(List<NewsCenterPagerBear.DataBean> data) {
this.data=data;
for (int i = 0; i <data.size() ; i++) {
}
//设置适配器
adapter=new LeftmenuFragmentAdapter();
listView.setAdapter(adapter);
}
class LeftmenuFragmentAdapter extends BaseAdapter{
@Override
public int getCount() {
return data.size();
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
//设置左侧菜单文本格式
TextView textView=(TextView) View.inflate(context,R.layout.item_leftmenu,null);
textView.setText(data.get(i).getTitle());
if (i==prePosition){
//设置红色
textView.setEnabled(true);
}else {
//白色
textView.setEnabled(false);
}
return textView;
}
@Override
public Object getItem(int i) {
return null;
}
@Override
public long getItemId(int i) {
return 0;
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000"
android:id="@+id/fl_leftmeau"
>
<!--<TextView
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="我是左侧菜单"
android:textColor="#ff0000"
android:textSize="25sp"
/>-->
</FrameLayout>
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:text="新闻"
android:textSize="19sp"
android:padding="18dp"
android:drawablePadding="18dp"
android:enabled="false"
android:drawableLeft="@drawable/item_leftmenu_selector"
android:textColor="@drawable/item_leftmenu_textcolor_selector"
android:layout_height="wrap_content">
</TextView>
一般按钮用state_pressed
rediogroup用state_checked
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="false" android:drawable="@drawable/sanjiao01"></item>
<item android:state_enabled="true" android:drawable="@drawable/sanjiao02"></item>
</selector>
- 左侧菜单与新闻中心页面的交互(菜单点击收起)
package android.pims.com.beijingnews.pager;
import android.content.Context;
import android.graphics.Color;
import android.pims.com.beijingnews.activity.MainActivity;
import android.pims.com.beijingnews.base.BasePager;
import android.pims.com.beijingnews.domain.NewsCenterPagerBear;
import android.pims.com.beijingnews.fragment.LeftmeauFragment;
import android.pims.com.beijingnews.utils.Constants;
import android.util.Log;
import android.view.Gravity;
import android.view.View;
import android.widget.TextView;
import com.google.gson.Gson;
import org.xutils.common.Callback;
import org.xutils.http.RequestParams;
import org.xutils.x;
import java.util.List;
/*
* 作者:刘思慧 on 2019/10/07
* 微信号:lsh666888
* QQ号:1252353927
* 作用:新闻中心页面
* */
public class NewsCenterPager extends BasePager {
/*
* 左侧菜单对应的数据集合
* */
List<NewsCenterPagerBear.DataBean> data;
public NewsCenterPager(Context context) {
super(context);
}
public void initData(){
super.initData();
ib_menu.setVisibility(View.VISIBLE); //左侧菜单设置是否显示
//1、设置标题
tv_title.setText("新闻中心");
//2、联网请求网络数据,创建视图
TextView textView=new TextView(context);
textView.setGravity(Gravity.CENTER);
textView.setTextColor(Color.RED);
textView.setTextSize(25);
//3、把子视图添加到basePager的FrameLayout中
fl_content.addView(textView);
//4、绑定数据
textView.setText("新闻中心内容");
//联网请求数据
getDataFromNet();
//3、绑定数据
}
/*
* 使用xUtils联网请求数据
* */
private void getDataFromNet() {
RequestParams params=new RequestParams(Constants.NEWSCETER_PAGER_URL);
x.http().get(params, new Callback.CommonCallback<String>() {
//CommonCallback公共回调
@Override
public void onSuccess(String result) {
//使用xUtils联网请求成功
processData(result); //解析json
//设置适配器
}
@Override
public void onError(Throwable ex, boolean isOnCallback) {
//使用xUtils联网请求失败
}
@Override
public void onCancelled(CancelledException cex) {
//使用xUtils联网取消
}
@Override
public void onFinished() {
//使用xUtils联网完成
}
});
}
/*
* 解析json数据和显示数据
* */
private void processData(String json) {
NewsCenterPagerBear bear=parsedJson(json);
String title=bear.getData().get(0).getChildren().get(1).getTitle();
//System.out.println("使用Gson解析json数据成功"+title);
//给左侧菜单传递数据
data = bear.getData();
MainActivity mainActivity=(MainActivity) context;
//得到左侧菜单
LeftmeauFragment leftmenuFragment=mainActivity.getLeftmenuFragment();
//把数据传递给左侧菜单
leftmenuFragment.setData(data);
}
/*
* 使用第三方Gson解析json
* 1、使用系统的API解析
* 2、使用第三方