Selaa lähdekoodia

1.完成动态跑马灯
2.完成动态Banner 内部跳转

ZhangXinYu 6 vuotta sitten
vanhempi
commit
bab1aa8908

+ 2 - 2
app/build.gradle

@@ -24,8 +24,8 @@ android {
         targetSdkVersion rootProject.ext.targetSdkVersion
         multiDexEnabled true
         multiDexKeepProguard file("multidexKeep.pro")//腾讯bugly的类放到主Dex
-        versionCode 327
-        versionName "3.2.7"
+        versionCode 328
+        versionName "3.2.8"
         testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
         flavorDimensions "versionCode"
         ndk {

+ 9 - 0
app/src/main/java/com/tongyu/luck/happywork/bean/BannerBean.java

@@ -16,6 +16,7 @@ public class BannerBean {
     private String createTime;
     private String updateTime;
     private String endTime;
+    private boolean linkFlag;
 
     public void setId(String id) {
         this.id = id;
@@ -136,4 +137,12 @@ public class BannerBean {
     public String getEndTime() {
         return endTime;
     }
+
+    public boolean isLinkFlag() {
+        return linkFlag;
+    }
+
+    public void setLinkFlag(boolean linkFlag) {
+        this.linkFlag = linkFlag;
+    }
 }

+ 9 - 0
app/src/main/java/com/tongyu/luck/happywork/bean/api/ApiBannerBean.java

@@ -6,11 +6,20 @@ import java.util.List;
 
 public class ApiBannerBean {
     private List<BannerBean> bannerList;
+    private List<String> broadcastList;
 
     public List<BannerBean> getBannerList() {
         return bannerList;
     }
 
+    public List<String> getBroadcastList() {
+        return broadcastList;
+    }
+
+    public void setBroadcastList(List<String> broadcastList) {
+        this.broadcastList = broadcastList;
+    }
+
     public void setBannerList(List<BannerBean> bannerList) {
         this.bannerList = bannerList;
     }

+ 6 - 9
app/src/main/java/com/tongyu/luck/happywork/ui/activity/WebViewActivity.java

@@ -27,6 +27,7 @@ public class WebViewActivity extends BaseActivity {
     WebView mWebView;
 
     String mUri;
+    String mTitle;
 
     @Override
     public int getLayoutId() {
@@ -43,6 +44,7 @@ public class WebViewActivity extends BaseActivity {
         super.onCreate(savedInstanceState);
         initActionBarNewStyle();
         mUri = getIntent().getStringExtra(IntentConstant.URL);
+        mTitle = getIntent().getStringExtra(IntentConstant.CONTENT);
         mWebView.setWebViewClient(new MyWebViewClient());
         WebSettings webSettings = mWebView.getSettings();
         String ua = webSettings.getUserAgentString();
@@ -75,6 +77,8 @@ public class WebViewActivity extends BaseActivity {
         } else {
             mWebView.loadUrl(mUri);
         }
+        if (!TextUtils.isEmpty(mTitle))
+            setTitle(mTitle);
     }
 
     class MyWebViewClient extends WebViewClient {
@@ -82,7 +86,8 @@ public class WebViewActivity extends BaseActivity {
         @Override
         public void onPageStarted(WebView view, String url, Bitmap favicon) {
             super.onPageStarted(view, url, favicon);
-            updateTitle(url);
+            if (TextUtils.isEmpty(mTitle))
+                setTitle(url);
             mWebView.getSettings().setBlockNetworkImage(true);
         }
 
@@ -109,12 +114,4 @@ public class WebViewActivity extends BaseActivity {
         }
     }
 
-    public void updateTitle(String name) {
-        if (!TextUtils.isEmpty(name)) {
-            setTitle(name);
-        } else {
-            setTitle("");
-        }
-    }
-
 }

+ 35 - 18
app/src/main/java/com/tongyu/luck/happywork/ui/fragment/cclient/HomeFragment.java

@@ -176,8 +176,9 @@ public class HomeFragment extends BaseFragment<HomeFragmentPresenter> implements
      * @param imageList
      */
     @Override
-    public void onBanner(List<BannerBean> imageList) {
+    public void onBanner(List<BannerBean> imageList, List<String> broadcastList) {
         mHomeHeaderHolder.initBanner(imageList);
+        mHomeHeaderHolder.initMarquee(broadcastList);
     }
 
     /**
@@ -341,17 +342,6 @@ public class HomeFragment extends BaseFragment<HomeFragmentPresenter> implements
 
         public HomeHeaderHolder(Context mContext) {
             super(mContext);
-            tvMarquee.setText("热心达人!用户孟潞帮朋友找到工作,获得500元推荐入职奖励!       " +
-                    "棒棒哒!用户沈佳宜努力工作了30天,获得3000元入职奖励!       " +
-                    "恭喜恭喜!用户秦寒推荐新用户注册,获得5元推荐注册奖励!       " +
-                    "给你点赞!用户张汉文完成拼工在职30天,获得1000元拼工团奖励!       " +
-                    "厉害了!用户李丽刚刚完善了个人简历,好工作正在赶来的路上!       ");
-            // 初始化
-            tvMarquee.init(((BaseActivity) mContext).getWindowManager());
-            // 设置滚动方向
-            tvMarquee.setScrollDirection(MarqueeTextView.RIGHT_TO_LEFT);
-            // 设置滚动速度
-            tvMarquee.setScrollMode(MarqueeTextView.SCROLL_FAST);
         }
 
         @Override
@@ -396,6 +386,29 @@ public class HomeFragment extends BaseFragment<HomeFragmentPresenter> implements
         }
 
         /**
+         * 加载跑马灯
+         *
+         * @param marqueeList
+         */
+        public void initMarquee(List<String> marqueeList) {
+            String result = "";
+            if (marqueeList != null && !marqueeList.isEmpty()) {
+                for (String item : marqueeList) {
+                    if (!TextUtils.isEmpty(item)) {
+                        result += (item + "       ");
+                    }
+                }
+            }
+            tvMarquee.setText(result);
+            // 初始化
+            tvMarquee.init(((BaseActivity) mContext).getWindowManager());
+            // 设置滚动方向
+            tvMarquee.setScrollDirection(MarqueeTextView.RIGHT_TO_LEFT);
+            // 设置滚动速度
+            tvMarquee.setScrollMode(MarqueeTextView.SCROLL_FAST);
+        }
+
+        /**
          * 加载banner
          */
         public void initBanner(final List<BannerBean> mData) {
@@ -448,12 +461,16 @@ public class HomeFragment extends BaseFragment<HomeFragmentPresenter> implements
                             }
                         } else if (!TextUtils.isEmpty(bannerBean.getPicDetail())) {//跳转外部链接
                             if (bannerBean.getPicDetail().startsWith("http://") || bannerBean.getPicDetail().startsWith("https://")) {//判断是否合法链接
-                                Intent intent = new Intent(mContext, WebViewActivity.class);
-                                intent.putExtra(IntentConstant.URL, bannerBean.getPicDetail());
-                                startActivity(intent);
-//                                Uri uri = Uri.parse(bannerBean.getPicDetail());
-//                                Intent intent = new Intent(Intent.ACTION_VIEW, uri);
-//                                startActivity(intent);
+                                if (bannerBean.isLinkFlag()) {//外部链接
+                                    Uri uri = Uri.parse(bannerBean.getPicDetail());
+                                    Intent intent = new Intent(Intent.ACTION_VIEW, uri);
+                                    startActivity(intent);
+                                } else {//内部链接
+                                    Intent intent = new Intent(mContext, WebViewActivity.class);
+                                    intent.putExtra(IntentConstant.CONTENT, bannerBean.getTitle());
+                                    intent.putExtra(IntentConstant.URL, bannerBean.getPicDetail());
+                                    startActivity(intent);
+                                }
                             }
                         }
                     }

+ 1 - 1
app/src/main/java/com/tongyu/luck/happywork/ui/mvp/cclient/contacts/HomeFragmentContacts.java

@@ -14,7 +14,7 @@ public class HomeFragmentContacts {
     public interface IHomeFragmentView extends IView {
         void onHotPositionList(List<PositionListBean> mData, boolean isLastPage);
 
-        void onBanner(List<BannerBean> imageList);
+        void onBanner(List<BannerBean> imageList, List<String> broadcastList);
 
         void initCity(String cityName);
 

+ 1 - 1
app/src/main/java/com/tongyu/luck/happywork/ui/mvp/cclient/presenter/HomeFragmentPresenter.java

@@ -63,7 +63,7 @@ public class HomeFragmentPresenter extends BasePresenter<HomeFragment> implement
                 @Override
                 public void onData(ApiBannerBean data) {
                     if (isViewAttach() && data.getBannerList() != null) {
-                        mvpReference.get().onBanner(data.getBannerList());
+                        mvpReference.get().onBanner(data.getBannerList(),data.getBroadcastList());
                     }
                 }