Просмотр исходного кода

Apex Mobile
1 修复detail 导航栏样式不正确的bug
2 优化detail tab bar 的显示。
3 优化segment view 显示。
4 Announcements / Market news 增加导航栏,并优化列表显示。
5 修复国内手机如果内置了假的GMS 包,打开地图会闪退的bug,同时增加导航栏。
6 About 增加导航栏。
7 优化 Announcements / Market news detail 并增加导航栏。
8 Change password 增加导航栏。

Ray Zhang 8 лет назад
Родитель
Сommit
27dadff224
38 измененных файлов с 525 добавлено и 164 удалено
  1. 1 1
      Apex Mobile/app/src/main/AndroidManifest.xml
  2. 42 8
      Apex Mobile/app/src/main/java/com/usai/apex/AboutActivity.java
  3. 96 23
      Apex Mobile/app/src/main/java/com/usai/apex/AnnouncementActivity.java
  4. 51 6
      Apex Mobile/app/src/main/java/com/usai/apex/ApexHistoryActivity.java
  5. 44 3
      Apex Mobile/app/src/main/java/com/usai/apex/ChangePasswordActivity.java
  6. 17 1
      Apex Mobile/app/src/main/java/com/usai/apex/DetailActivity.java
  7. 2 2
      Apex Mobile/app/src/main/java/com/usai/apex/DetailFragment.java
  8. 1 3
      Apex Mobile/app/src/main/java/com/usai/apex/DocumentsFragment.java
  9. 42 2
      Apex Mobile/app/src/main/java/com/usai/apex/InnerMapActivity.java
  10. 1 1
      Apex Mobile/app/src/main/java/com/usai/apex/LocalDocumentActivity.java
  11. 1 1
      Apex Mobile/app/src/main/java/com/usai/apex/LocationDetailActivity.java
  12. 2 2
      Apex Mobile/app/src/main/java/com/usai/apex/ServiceLocationFragment.java
  13. 57 6
      Apex Mobile/app/src/main/java/com/usai/apex/WebActivity.java
  14. 1 1
      Apex Mobile/app/src/main/java/com/usai/apex/mainframe/StaticModelistFragment.java
  15. 2 2
      Apex Mobile/app/src/main/java/com/usai/apex/mainframe/TrackingListFragment.java
  16. 2 6
      Apex Mobile/app/src/main/java/com/usai/apex/saved/SavedDetailFragment.java
  17. 2 6
      Apex Mobile/app/src/main/java/com/usai/apex/saved/SavedDocumentsFragment.java
  18. 2 7
      Apex Mobile/app/src/main/java/com/usai/apex/saved/SavedSearchFragment.java
  19. 5 2
      Apex Mobile/app/src/main/java/com/usai/util/commonUtil.java
  20. BIN
      Apex Mobile/app/src/main/res/drawable-hdpi/bg_4.png
  21. 4 4
      Apex Mobile/app/src/main/res/drawable/segment_left_background.xml
  22. 4 4
      Apex Mobile/app/src/main/res/drawable/segment_right_background.xml
  23. 1 9
      Apex Mobile/app/src/main/res/layout/activity_apex.xml
  24. 13 14
      Apex Mobile/app/src/main/res/layout/activity_detail.xml
  25. 20 8
      Apex Mobile/app/src/main/res/layout/activity_history.xml
  26. 1 1
      Apex Mobile/app/src/main/res/layout/activity_location_detail.xml
  27. 60 0
      Apex Mobile/app/src/main/res/layout/announcement_cell.xml
  28. 5 5
      Apex Mobile/app/src/main/res/layout/detail_tracking_cell.xml
  29. 1 1
      Apex Mobile/app/src/main/res/layout/documents_list_item.xml
  30. 1 1
      Apex Mobile/app/src/main/res/layout/fragment_direct_tracking.xml
  31. 1 1
      Apex Mobile/app/src/main/res/layout/fragment_tools.xml
  32. 17 7
      Apex Mobile/app/src/main/res/layout/fragment_web.xml
  33. 6 6
      Apex Mobile/app/src/main/res/layout/saved_cell.xml
  34. 6 6
      Apex Mobile/app/src/main/res/layout/saved_doc.xml
  35. 6 6
      Apex Mobile/app/src/main/res/layout/static_modelist_cell.xml
  36. 1 1
      Apex Mobile/app/src/main/res/values/colors.xml
  37. 7 7
      Apex Mobile/app/src/main/res/values/styles.xml
  38. BIN
      Apex Mobile/captures/com.usai.apex_2018.03.01_09.54.li

+ 1 - 1
Apex Mobile/app/src/main/AndroidManifest.xml

@@ -96,7 +96,7 @@
         android:allowBackup="true"
         android:icon="@drawable/ic_launcher"
         android:label="@string/app_name"
-        android:theme="@style/AppTheme"
+        android:theme="@style/FixedActionbarTheme"
         android:screenOrientation="portrait"
         >
 

+ 42 - 8
Apex Mobile/app/src/main/java/com/usai/apex/AboutActivity.java

@@ -1,19 +1,51 @@
 package com.usai.apex;
 
-import java.io.InputStream;
-
-import org.apache.http.util.EncodingUtils;
-
-import android.os.Bundle;
-import android.app.Activity;
+import android.content.Intent;
 import android.content.pm.PackageManager.NameNotFoundException;
+import android.os.Bundle;
+import android.support.v7.app.ActionBar;
+import android.support.v7.app.AppCompatActivity;
 import android.util.Log;
-import android.webkit.WebView;
+import android.view.Gravity;
+import android.view.LayoutInflater;
+import android.view.MenuItem;
+import android.view.View;
 import android.widget.TextView;
 
-public class AboutActivity extends Activity
+public class AboutActivity extends AppCompatActivity
 {
+	@Override
+	public boolean onOptionsItemSelected(MenuItem item)
+	{
+		Intent intent = new Intent();
+		switch (item.getItemId())
+		{
+			case android.R.id.home:
+				finish();
+				break;
+
+			default:
+				break;
+		}
+		return super.onOptionsItemSelected(item);
+	}
+
+	private void setCustomActionBar() {
+		ActionBar.LayoutParams lp =new ActionBar.LayoutParams(ActionBar.LayoutParams.MATCH_PARENT, ActionBar.LayoutParams.MATCH_PARENT, Gravity.CENTER);
+		View mActionBarView = LayoutInflater.from(this).inflate(R.layout.actionbar_customtitle, null);
+
+		TextView titleview = mActionBarView.findViewById(R.id.title);
+		titleview.setText("About");
 
+		ActionBar actionBar = getSupportActionBar();
+		actionBar.setCustomView(mActionBarView, lp);
+		actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
+		actionBar.setDisplayShowCustomEnabled(true);
+		actionBar.setDisplayHomeAsUpEnabled(true);
+
+
+		actionBar.setDisplayShowTitleEnabled(false);
+	}
 	@Override
 	protected void onCreate(Bundle savedInstanceState)
 	{
@@ -21,6 +53,8 @@ public class AboutActivity extends Activity
 
 		super.onCreate(savedInstanceState);
 		setContentView(R.layout.activity_about);
+
+		setCustomActionBar();
 		final TextView tv_ver = (TextView) findViewById(R.id.tv_version);
 
 		// String str =

+ 96 - 23
Apex Mobile/app/src/main/java/com/usai/apex/AnnouncementActivity.java

@@ -1,41 +1,42 @@
 package com.usai.apex;
 
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.json.JSONException;
-import org.json.JSONObject;
-
-import com.usai.apex.ResultActivity.SearchTask;
-import com.usai.util.Network;
-import android.app.ListActivity;
 import android.content.Context;
 import android.content.Intent;
 import android.graphics.Bitmap;
 import android.graphics.BitmapFactory;
-import android.graphics.Color;
 import android.os.AsyncTask;
 import android.os.Bundle;
+import android.support.v7.app.ActionBar;
+import android.support.v7.app.AppCompatActivity;
 import android.util.Base64;
 import android.util.Log;
 import android.view.Gravity;
 import android.view.LayoutInflater;
+import android.view.MenuItem;
 import android.view.View;
 import android.view.ViewGroup;
+import android.widget.AdapterView;
 import android.widget.BaseAdapter;
 import android.widget.ImageView;
+import android.widget.ListAdapter;
 import android.widget.ListView;
-import android.widget.SimpleAdapter;
 import android.widget.TextView;
 import android.widget.Toast;
 
-public class AnnouncementActivity extends ListActivity
+import com.usai.util.Network;
+
+import org.json.JSONException;
+import org.json.JSONObject;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+public class AnnouncementActivity extends AppCompatActivity
 {
 	String				lastid			= "";
 	int					limit			= 10;
@@ -46,6 +47,21 @@ public class AnnouncementActivity extends ListActivity
 
 	String				module_name		= "";
 
+	ListView mList;
+	ListAdapter mAdapter;
+
+
+	public void setListAdapter(ListAdapter adapter) {
+		synchronized (this) {
+
+			mAdapter = adapter;
+			mList.setAdapter(adapter);
+		}
+	}
+	public ListView getListView() {
+
+		return mList;
+	}
 	public void requestdata()
 	{
 
@@ -65,11 +81,11 @@ public class AnnouncementActivity extends ListActivity
 
 	}
 
-	@Override
+
 	protected void onListItemClick(ListView l, View v, int position, long id)
 	{
 		// TODO Auto-generated method stub
-		super.onListItemClick(l, v, position, id);
+
 
 		// Log.i("FragmentList", "Item clicked: " + id);
 		Intent intent = new Intent();
@@ -89,6 +105,38 @@ public class AnnouncementActivity extends ListActivity
 		super.onDestroy();
 	}
 
+    @Override
+    public boolean onOptionsItemSelected(MenuItem item)
+    {
+        Intent intent = new Intent();
+        switch (item.getItemId())
+        {
+            case android.R.id.home:
+                finish();
+                break;
+
+            default:
+                break;
+        }
+        return super.onOptionsItemSelected(item);
+    }
+
+    private void setCustomActionBar() {
+		ActionBar.LayoutParams lp =new ActionBar.LayoutParams(ActionBar.LayoutParams.MATCH_PARENT, ActionBar.LayoutParams.MATCH_PARENT, Gravity.CENTER);
+		View mActionBarView = LayoutInflater.from(this).inflate(R.layout.actionbar_customtitle, null);
+
+		TextView titleview = mActionBarView.findViewById(R.id.title);
+		titleview.setText(getIntent().getStringExtra("module_name"));
+
+		ActionBar actionBar = getSupportActionBar();
+		actionBar.setCustomView(mActionBarView, lp);
+		actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
+		actionBar.setDisplayShowCustomEnabled(true);
+		actionBar.setDisplayHomeAsUpEnabled(true);
+
+
+		actionBar.setDisplayShowTitleEnabled(false);
+	}
 	@Override
 	protected void onCreate(Bundle savedInstanceState)
 	{
@@ -97,11 +145,23 @@ public class AnnouncementActivity extends ListActivity
 
 		super.onCreate(savedInstanceState);
 		setContentView(R.layout.activity_announcements);
+
+		setCustomActionBar();
+
 		adapter = new AnnouncementAdapter(searchresult, this);
 
 		module_name = getIntent().getStringExtra("module_name");
 
 		setTitle(module_name);
+
+		mList = findViewById(android.R.id.list);
+		mList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
+			@Override
+			public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
+//				super.onListItemClick(parent, view, position, id);
+				AnnouncementActivity.this.onListItemClick((ListView) parent,view,position,id);
+			}
+		});
 		view_page_footer = LayoutInflater.from(this).inflate(
 				R.layout.view_page_footer, null);
 		getListView().addFooterView(view_page_footer);// 添加底部视图
@@ -379,7 +439,7 @@ public class AnnouncementActivity extends ListActivity
 		public View getView(int position, View convertView, ViewGroup parent)
 		{
 			// TODO Auto-generated method stub
-			convertView = mInflater.inflate(R.layout.announcement_item, null);// 根据布局文件实例化view
+			convertView = mInflater.inflate(R.layout.announcement_cell, null);// 根据布局文件实例化view
 
 			TextView title = (TextView) convertView.findViewById(R.id.tv_title);// 找某个控件
 			title.setText(result.getData().get(position).get("title")
@@ -388,6 +448,8 @@ public class AnnouncementActivity extends ListActivity
 					.findViewById(R.id.tv_content);
 			content.setText(result.getData().get(position).get("content")
 					.toString());
+            ImageView iv_thumb = (ImageView) convertView
+                    .findViewById(R.id.iv_thumb);
 			if (result.getData().get(position).get("image").toString().length() > 0)
 			{
 				byte[] gzipBuff = Base64.decode(result.getData().get(position)
@@ -398,8 +460,7 @@ public class AnnouncementActivity extends ListActivity
 
 				ByteArrayOutputStream baos = new ByteArrayOutputStream(
 						gzipBuff.length);
-				ImageView iv_thumb = (ImageView) convertView
-						.findViewById(R.id.iv_thumb);
+
 				try
 				{
 					baos.write(gzipBuff);
@@ -416,6 +477,18 @@ public class AnnouncementActivity extends ListActivity
 					e.printStackTrace();
 				}
 			}
+			else
+            {
+                if(module_name.equals("Market News"))
+                {
+                    iv_thumb.setImageResource(R.drawable.rect_market_news);
+                }
+                else
+                {
+                    iv_thumb.setImageResource(R.drawable.mode_announcement);
+
+                }
+            }
 			// img.setBackgroundResource((Integer)jObject.get("img"));
 
 			return convertView;

+ 51 - 6
Apex Mobile/app/src/main/java/com/usai/apex/ApexHistoryActivity.java

@@ -1,16 +1,56 @@
 package com.usai.apex;
 
-import java.io.InputStream;
-
-import org.apache.http.util.EncodingUtils;
-
-import android.app.Activity;
+import android.content.Intent;
+import android.graphics.Color;
 import android.os.Bundle;
+import android.support.v7.app.ActionBar;
+import android.support.v7.app.AppCompatActivity;
 import android.util.Log;
+import android.view.Gravity;
+import android.view.LayoutInflater;
+import android.view.MenuItem;
+import android.view.View;
 import android.webkit.WebView;
+import android.widget.TextView;
+
+import org.apache.http.util.EncodingUtils;
 
-public class ApexHistoryActivity extends Activity
+import java.io.InputStream;
+
+public class ApexHistoryActivity extends AppCompatActivity
 {
+	@Override
+	public boolean onOptionsItemSelected(MenuItem item)
+	{
+		Intent intent = new Intent();
+		switch (item.getItemId())
+		{
+			case android.R.id.home:
+				finish();
+				break;
+
+			default:
+				break;
+		}
+		return super.onOptionsItemSelected(item);
+	}
+
+	private void setCustomActionBar() {
+		ActionBar.LayoutParams lp =new ActionBar.LayoutParams(ActionBar.LayoutParams.MATCH_PARENT, ActionBar.LayoutParams.MATCH_PARENT, Gravity.CENTER);
+		View mActionBarView = LayoutInflater.from(this).inflate(R.layout.actionbar_customtitle, null);
+
+		TextView titleview = mActionBarView.findViewById(R.id.title);
+		titleview.setText("Apex History");
+
+		ActionBar actionBar = getSupportActionBar();
+		actionBar.setCustomView(mActionBarView, lp);
+		actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
+		actionBar.setDisplayShowCustomEnabled(true);
+		actionBar.setDisplayHomeAsUpEnabled(true);
+
+
+		actionBar.setDisplayShowTitleEnabled(false);
+	}
 	@Override
 	protected void onCreate(Bundle savedInstanceState)
 	{
@@ -19,7 +59,12 @@ public class ApexHistoryActivity extends Activity
 		super.onCreate(savedInstanceState);
 		setContentView(R.layout.activity_history);
 
+		setCustomActionBar();
 		WebView wv = (WebView) findViewById(R.id.webView1);
+
+		wv.setBackgroundColor(Color.TRANSPARENT); // 设置背景色
+//		wv.getBackground().setAlpha(); // 设置填充透明度 范围:0-255
+
 		String content = "";
 		try
 		{

+ 44 - 3
Apex Mobile/app/src/main/java/com/usai/apex/ChangePasswordActivity.java

@@ -1,7 +1,5 @@
 package com.usai.apex;
 
-import com.usai.util.Network;
-
 import android.animation.Animator;
 import android.animation.AnimatorListenerAdapter;
 import android.annotation.TargetApi;
@@ -11,13 +9,18 @@ import android.app.AlertDialog.Builder;
 import android.content.Context;
 import android.content.DialogInterface;
 import android.content.DialogInterface.OnClickListener;
+import android.content.Intent;
 import android.os.AsyncTask;
 import android.os.Build;
 import android.os.Bundle;
+import android.support.v7.app.ActionBar;
+import android.support.v7.app.AppCompatActivity;
 import android.text.TextUtils;
 import android.util.Log;
 import android.view.Gravity;
 import android.view.KeyEvent;
+import android.view.LayoutInflater;
+import android.view.MenuItem;
 import android.view.View;
 import android.view.inputmethod.EditorInfo;
 import android.view.inputmethod.InputMethodManager;
@@ -25,11 +28,13 @@ import android.widget.EditText;
 import android.widget.TextView;
 import android.widget.Toast;
 
+import com.usai.util.Network;
+
 /**
  * Activity which displays a login screen to the user, offering registration as
  * well.
  */
-public class ChangePasswordActivity extends Activity {
+public class ChangePasswordActivity extends AppCompatActivity {
 	private UserLoginTask mAuthTask = null;
 
 	// Values for email and password at the time of the login attempt.
@@ -46,12 +51,48 @@ public class ChangePasswordActivity extends Activity {
 	private View mLoginStatusView;
 	private TextView mLoginStatusMessageView;
 
+
+
+	@Override
+	public boolean onOptionsItemSelected(MenuItem item)
+	{
+		Intent intent = new Intent();
+		switch (item.getItemId())
+		{
+			case android.R.id.home:
+				finish();
+				break;
+
+			default:
+				break;
+		}
+		return super.onOptionsItemSelected(item);
+	}
+
+	private void setCustomActionBar() {
+		ActionBar.LayoutParams lp =new ActionBar.LayoutParams(ActionBar.LayoutParams.MATCH_PARENT, ActionBar.LayoutParams.MATCH_PARENT, Gravity.CENTER);
+		View mActionBarView = LayoutInflater.from(this).inflate(R.layout.actionbar_customtitle, null);
+
+		TextView titleview = mActionBarView.findViewById(R.id.title);
+		titleview.setText(getTitle());
+
+		ActionBar actionBar = getSupportActionBar();
+		actionBar.setCustomView(mActionBarView, lp);
+		actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
+		actionBar.setDisplayShowCustomEnabled(true);
+		actionBar.setDisplayHomeAsUpEnabled(true);
+
+
+		actionBar.setDisplayShowTitleEnabled(false);
+	}
 	@Override
 	protected void onCreate(Bundle savedInstanceState) {
 		super.onCreate(savedInstanceState);
 
 		setContentView(R.layout.activity_change_password);
 
+		setCustomActionBar();
+
 		// Set up the login form.
 
 		mOldpassView = (EditText) findViewById(R.id.old_password);

+ 17 - 1
Apex Mobile/app/src/main/java/com/usai/apex/DetailActivity.java

@@ -19,9 +19,9 @@ import android.view.View;
 import android.widget.EditText;
 import android.widget.FrameLayout;
 import android.widget.TabHost;
+import android.widget.TabWidget;
 import android.widget.TextView;
 
-import com.usai.apex.Result.SearchResultActivity;
 import com.usai.apex.mainframe.RootActivity;
 import com.usai.util.commonUtil;
 import com.usai.util.dbUtil;
@@ -337,6 +337,22 @@ public class DetailActivity extends AppCompatActivity implements
 			// Log.d("@@@@@@@@@", field + " : " + val);
 		}
 
+
+		TabWidget tabWidget=mTabHost.getTabWidget();
+		for (int i = 0; i < tabWidget.getChildCount(); i++) {
+
+			tabWidget.getChildAt(i).getLayoutParams().height = commonUtil.dp2px(this,39);
+			tabWidget.getChildAt(i).setPadding(24,0,24,0);
+//			tabWidget.getChildAt(i).getLayoutParams().height = 60;
+			TextView tv=(TextView)tabWidget.getChildAt(i).findViewById(android.R.id.title);
+//			tv.setGravity(BIND_AUTO_CREATE);
+//			tv.setPadding(10, 10,10, 10);
+			tv.setTextSize(12);//设置字体的大小;
+//			tv.setTextColor(Color.WHITE);//设置字体的颜色;
+//获取tabs图片;
+//			ImageView iv=(ImageView)tabWidget.getChildAt(i).findViewById(android.R.id.icon);
+		}
+
 		// for (int i=1; i <= tabmap.size(); i++) {
 		// String name = tabmap.keySet().iterator().;
 		// mTabHost.addTab(mTabHost.newTabSpec(name)

+ 2 - 2
Apex Mobile/app/src/main/java/com/usai/apex/DetailFragment.java

@@ -466,7 +466,7 @@ public class DetailFragment extends Fragment implements OnClickListener /*
 
 
 						ImageView icon = (ImageView)  listitem
-								.findViewById(R.id.iv_icon);
+								.findViewById(R.id.iv_thumb);
 
 						String iconname = itemobj.getString("icon");
 						int rid = commonUtil.iconName2Rid(getActivity(),iconname);
@@ -481,7 +481,7 @@ public class DetailFragment extends Fragment implements OnClickListener /*
 						}
 
 						TextView tvitem = (TextView) listitem
-								.findViewById(R.id.tv_msg);
+								.findViewById(R.id.tv_title);
 						String val = itemobj.getString("msg");
 						tvitem.setText(val);
 

+ 1 - 3
Apex Mobile/app/src/main/java/com/usai/apex/DocumentsFragment.java

@@ -5,9 +5,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import android.content.ComponentName;
 import android.content.Intent;
-import android.content.Intent.ShortcutIconResource;
 import android.graphics.Color;
 import android.os.Bundle;
 import android.support.v4.app.ListFragment;
@@ -55,7 +53,7 @@ public class DocumentsFragment extends ListFragment
 		super.onActivityCreated(savedInstanceState);
 		SimpleAdapter adapter = new SimpleAdapter(this.getActivity(),
 				getData(), R.layout.fragment_tools, new String[] { "title",
-						"img" }, new int[] { R.id.tv_toolname, R.id.iv_icon });
+						"img" }, new int[] { R.id.tv_toolname, R.id.iv_thumb});
 		setListAdapter(adapter);
 		this.getListView().setBackgroundColor(Color.WHITE);
 	}

+ 42 - 2
Apex Mobile/app/src/main/java/com/usai/apex/InnerMapActivity.java

@@ -1,20 +1,27 @@
 package com.usai.apex;
 
+import android.content.Intent;
 import android.content.pm.PackageInfo;
 import android.content.pm.PackageManager.NameNotFoundException;
 import android.os.Bundle;
 import android.support.v4.app.Fragment;
-import android.support.v4.app.FragmentActivity;
 import android.support.v4.app.FragmentManager;
 import android.support.v4.app.FragmentTransaction;
+import android.support.v7.app.ActionBar;
+import android.support.v7.app.AppCompatActivity;
+import android.view.Gravity;
 import android.view.KeyEvent;
+import android.view.LayoutInflater;
+import android.view.MenuItem;
+import android.view.View;
+import android.widget.TextView;
 
 import com.baidu.mapapi.map.SupportMapFragment;
 
 //import com.baidu.mapapi.MKGeneralListener;
 //import com.baidu.mapapi.map.MKEvent;
 
-public class InnerMapActivity extends FragmentActivity
+public class InnerMapActivity extends AppCompatActivity
 {
 //	public static boolean		m_bKeyRight				= true;
 //	BMapManager					mBMapManager			= null;
@@ -87,7 +94,38 @@ public class InnerMapActivity extends FragmentActivity
 		}
 		return super.onKeyDown(keyCode, event);
 	}
+	@Override
+	public boolean onOptionsItemSelected(MenuItem item)
+	{
+		Intent intent = new Intent();
+		switch (item.getItemId())
+		{
+			case android.R.id.home:
+				finish();
+				break;
+
+			default:
+				break;
+		}
+		return super.onOptionsItemSelected(item);
+	}
 
+	private void setCustomActionBar() {
+		ActionBar.LayoutParams lp =new ActionBar.LayoutParams(ActionBar.LayoutParams.MATCH_PARENT, ActionBar.LayoutParams.MATCH_PARENT, Gravity.CENTER);
+		View mActionBarView = LayoutInflater.from(this).inflate(R.layout.actionbar_customtitle, null);
+
+		TextView titleview = mActionBarView.findViewById(R.id.title);
+		titleview.setText("Service Location");
+
+		ActionBar actionBar = getSupportActionBar();
+		actionBar.setCustomView(mActionBarView, lp);
+		actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
+		actionBar.setDisplayShowCustomEnabled(true);
+		actionBar.setDisplayHomeAsUpEnabled(true);
+
+
+		actionBar.setDisplayShowTitleEnabled(false);
+	}
 	@Override
 	protected void onCreate(Bundle savedInstanceState)
 	{
@@ -157,6 +195,8 @@ public class InnerMapActivity extends FragmentActivity
 			manager.beginTransaction().add(R.id.inner_map, f, "map_fragment")
 					.commit();
 		}
+
+		setCustomActionBar();
 	}
 
 	// @Override

+ 1 - 1
Apex Mobile/app/src/main/java/com/usai/apex/LocalDocumentActivity.java

@@ -73,7 +73,7 @@ public class LocalDocumentActivity extends ListActivity
 
 		SimpleAdapter adapter = new DocumentsAdapter(this,
 				getData(), R.layout.documents_list_item, new String[] { "title",
-						"img" }, new int[] { R.id.tv_toolname, R.id.iv_icon });
+						"img" }, new int[] { R.id.tv_toolname, R.id.iv_thumb});
 		setListAdapter(adapter);
 		this.getListView().setBackgroundColor(Color.WHITE);		
 		

+ 1 - 1
Apex Mobile/app/src/main/java/com/usai/apex/LocationDetailActivity.java

@@ -69,7 +69,7 @@ public class LocationDetailActivity extends Activity
 		super.onCreate(savedInstanceState);
 		setContentView(R.layout.activity_location_detail);
 		detail = (LocationDetail) getIntent().getSerializableExtra("detail");
-		TextView tv_name = (TextView) findViewById(R.id.tv_msg);
+		TextView tv_name = (TextView) findViewById(R.id.tv_title);
 		tv_name.setText(detail.Name);
 		// tv_name.setMovementMethod(LinkMovementMethod.getInstance());
 		TextView tv_addr = (TextView) findViewById(R.id.tv_addr);

+ 2 - 2
Apex Mobile/app/src/main/java/com/usai/apex/ServiceLocationFragment.java

@@ -86,8 +86,8 @@ public class ServiceLocationFragment extends Fragment implements
 
 			Log.d("onResume", "get map from fragment");
 			 fragment.getMapAsync(this);
-//			if (map == null)
-//				return;
+			if (map == null)
+				return;
 		}
 
 

+ 57 - 6
Apex Mobile/app/src/main/java/com/usai/apex/WebActivity.java

@@ -1,13 +1,52 @@
 package com.usai.apex;
 
-import android.app.Activity;
+import android.content.Intent;
+import android.graphics.Color;
 import android.os.Bundle;
+import android.support.v7.app.ActionBar;
+import android.support.v7.app.AppCompatActivity;
+import android.view.Gravity;
+import android.view.LayoutInflater;
+import android.view.MenuItem;
+import android.view.View;
 import android.webkit.WebSettings;
 import android.webkit.WebView;
+import android.widget.TextView;
 
-public class WebActivity extends Activity
+public class WebActivity extends AppCompatActivity
 {
+	@Override
+	public boolean onOptionsItemSelected(MenuItem item)
+	{
+		Intent intent = new Intent();
+		switch (item.getItemId())
+		{
+			case android.R.id.home:
+				finish();
+				break;
+
+			default:
+				break;
+		}
+		return super.onOptionsItemSelected(item);
+	}
+
+	private void setCustomActionBar() {
+		ActionBar.LayoutParams lp =new ActionBar.LayoutParams(ActionBar.LayoutParams.MATCH_PARENT, ActionBar.LayoutParams.MATCH_PARENT, Gravity.CENTER);
+		View mActionBarView = LayoutInflater.from(this).inflate(R.layout.actionbar_customtitle, null);
+
+		TextView titleview = mActionBarView.findViewById(R.id.title);
+		titleview.setText(getTitle());
+
+		ActionBar actionBar = getSupportActionBar();
+		actionBar.setCustomView(mActionBarView, lp);
+		actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
+		actionBar.setDisplayShowCustomEnabled(true);
+		actionBar.setDisplayHomeAsUpEnabled(true);
 
+
+		actionBar.setDisplayShowTitleEnabled(false);
+	}
 	@Override
 	protected void onCreate(Bundle savedInstanceState)
 	{
@@ -20,14 +59,26 @@ public class WebActivity extends Activity
 
 		setTitle(title);
 		setContentView(R.layout.fragment_web);
+
+
+		setCustomActionBar();
 		String url = getIntent().getStringExtra("url");
 		WebView wv = (WebView) findViewById(R.id.wv_content);
-		
-		
 
-		WebSettings settings=wv.getSettings();
+		wv.setBackgroundColor(Color.TRANSPARENT); // 设置背景色
+
 
-		settings.setTextSize(WebSettings.TextSize.LARGER);
+		WebSettings settings=wv.getSettings();
+		// 设置可以支持缩放
+//		settings.setSupportZoom(true);
+// 设置出现缩放工具
+//		settings.setBuiltInZoomControls(true);
+//扩大比例的缩放
+//		settings.setUseWideViewPort(true);
+		//自适应屏幕
+		settings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
+		settings.setLoadWithOverviewMode(true);
+		settings.setTextZoom(150);
 
 		wv.loadUrl(url);
 

+ 1 - 1
Apex Mobile/app/src/main/java/com/usai/apex/mainframe/StaticModelistFragment.java

@@ -75,7 +75,7 @@ public class StaticModelistFragment extends ListFragment {
         JSONObject jsonobj=loadjson(rawid);
         adapter        = new SimpleAdapter(this.getActivity(),
                 getData(jsonobj), R.layout.static_modelist_cell, new String[] { "title",
-                "img","detail" }, new int[] { R.id.tv_msg, R.id.iv_icon,R.id.tv_detail });
+                "img","detail" }, new int[] { R.id.tv_title, R.id.iv_thumb,R.id.tv_detail });
 
         View headerView = initHeaderView();
         if(headerView!=null) {

+ 2 - 2
Apex Mobile/app/src/main/java/com/usai/apex/mainframe/TrackingListFragment.java

@@ -16,7 +16,6 @@ import android.widget.BaseAdapter;
 import android.widget.FrameLayout;
 import android.widget.ImageView;
 import android.widget.LinearLayout;
-import android.widget.ListView;
 import android.widget.ProgressBar;
 import android.widget.TextView;
 
@@ -202,7 +201,8 @@ public class TrackingListFragment extends ListFragment {
                     String port = objrec.getString("port");
              */
 
-            convertView = mInflater.inflate(R.layout.tracking_list_cell, null);// 根据布局文件实例化view
+            if(convertView==null)
+                convertView = mInflater.inflate(R.layout.tracking_list_cell, null);// 根据布局文件实例化view
 
             TextView title = (TextView) convertView.findViewById(R.id.tv_title);// 找某个控件
             title.setText(result.getData().get(position).get("title")

+ 2 - 6
Apex Mobile/app/src/main/java/com/usai/apex/saved/SavedDetailFragment.java

@@ -7,13 +7,9 @@ import android.database.sqlite.SQLiteDatabase;
 import android.graphics.Color;
 import android.graphics.drawable.ColorDrawable;
 import android.os.Bundle;
-import android.support.v4.app.ListFragment;
 import android.text.format.DateFormat;
-import android.util.Log;
 import android.view.LayoutInflater;
-import android.view.MotionEvent;
 import android.view.View;
-import android.view.View.OnTouchListener;
 import android.view.ViewGroup;
 import android.widget.BaseAdapter;
 import android.widget.Button;
@@ -180,9 +176,9 @@ public class SavedDetailFragment extends AMListFragment
 			ImageView icon;
 
 			Holder(View cell) {
-				message = (TextView) cell.findViewById(R.id.tv_msg);// 找某个控件
+				message = (TextView) cell.findViewById(R.id.tv_title);// 找某个控件
 				time = (TextView) cell.findViewById(R.id.tv_detail);
-				icon = (ImageView)cell.findViewById(R.id.iv_icon);
+				icon = (ImageView)cell.findViewById(R.id.iv_thumb);
 				cell.setTag(this);
 			}
 

+ 2 - 6
Apex Mobile/app/src/main/java/com/usai/apex/saved/SavedDocumentsFragment.java

@@ -3,21 +3,18 @@ package com.usai.apex.saved;
 
 import android.content.Context;
 import android.content.Intent;
-import android.database.sqlite.SQLiteDatabase;
 import android.graphics.Color;
 import android.graphics.drawable.ColorDrawable;
 import android.net.Uri;
 import android.os.Bundle;
 import android.os.Environment;
 import android.support.v4.app.Fragment;
-import android.support.v4.app.ListFragment;
 import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.ImageView;
 import android.widget.ListView;
-import android.widget.SimpleAdapter;
 import android.widget.TextView;
 
 import com.usai.apex.R;
@@ -27,7 +24,6 @@ import com.usai.apex.swipemenulistview.SwipeMenuCreator;
 import com.usai.apex.swipemenulistview.SwipeMenuItem;
 import com.usai.apex.swipemenulistview.SwipeMenuListView;
 import com.usai.util.commonUtil;
-import com.usai.util.dbUtil;
 
 import java.io.File;
 import java.text.SimpleDateFormat;
@@ -63,10 +59,10 @@ public class SavedDocumentsFragment extends AMListFragment/* implements View.OnT
 
 
             Holder(View cell) {
-                message = (TextView) cell.findViewById(R.id.tv_msg);// 找某个控件
+                message = (TextView) cell.findViewById(R.id.tv_title);// 找某个控件
                 time = (TextView) cell.findViewById(R.id.tv_detail);
                 iv = (ImageView)cell.findViewById(R.id.iv_share);
-                icon = (ImageView)cell.findViewById(R.id.iv_icon);
+                icon = (ImageView)cell.findViewById(R.id.iv_thumb);
                 cell.setTag(this);
             }
 

+ 2 - 7
Apex Mobile/app/src/main/java/com/usai/apex/saved/SavedSearchFragment.java

@@ -2,20 +2,15 @@ package com.usai.apex.saved;
 
 import android.content.Context;
 import android.content.Intent;
-import android.content.pm.ApplicationInfo;
 import android.database.Cursor;
 import android.database.sqlite.SQLiteDatabase;
 import android.graphics.Color;
 import android.graphics.drawable.ColorDrawable;
 import android.os.Bundle;
-import android.support.v4.app.ListFragment;
 import android.text.TextUtils;
 import android.text.format.DateFormat;
-import android.util.Log;
 import android.view.LayoutInflater;
-import android.view.MotionEvent;
 import android.view.View;
-import android.view.View.OnTouchListener;
 import android.view.ViewGroup;
 import android.widget.BaseAdapter;
 import android.widget.Button;
@@ -203,9 +198,9 @@ public class SavedSearchFragment extends AMListFragment
 			ImageView icon;
 
 			Holder(View cell) {
-				message = (TextView) cell.findViewById(R.id.tv_msg);// 找某个控件
+				message = (TextView) cell.findViewById(R.id.tv_title);// 找某个控件
 				time = (TextView) cell.findViewById(R.id.tv_detail);
-				icon = (ImageView)cell.findViewById(R.id.iv_icon);
+				icon = (ImageView)cell.findViewById(R.id.iv_thumb);
 				cell.setTag(this);
 			}
 

+ 5 - 2
Apex Mobile/app/src/main/java/com/usai/util/commonUtil.java

@@ -130,8 +130,11 @@ public class commonUtil {
     public static int iconName2Rid(Context context,String name) {
 
 
-        if (context == null || TextUtils.isEmpty(name))
-            return R.drawable.bg_4;
+        if (context == null || TextUtils.isEmpty(name)) {
+            Log.d("null icon", "iconName2Rid context: "+(context==null)+" name isnull: "+(name == null) );
+
+            return R.drawable.ic_launcher_new;
+        }
         if(name.equals("Ocean Booking")|| name.equals("Booking Detail"))
             name = "mode_booking";
         if(name.equals("Ocean B/L info.")||name.equals("B/L info. Detail"))

BIN
Apex Mobile/app/src/main/res/drawable-hdpi/bg_4.png


+ 4 - 4
Apex Mobile/app/src/main/res/drawable/segment_left_background.xml

@@ -7,9 +7,9 @@
             <solid android:color="@color/icon_gray" />
 
             <corners
-                android:bottomLeftRadius="15dp"
+                android:bottomLeftRadius="5dp"
                 android:bottomRightRadius="0dp"
-                android:topLeftRadius="15dp"
+                android:topLeftRadius="5dp"
                 android:topRightRadius="0dp" />
         </shape>
     </item>
@@ -18,9 +18,9 @@
         <shape>
             <stroke android:width="1dp" android:color="@color/icon_gray" />
             <solid android:color="#ffffff" />
-            <corners android:bottomLeftRadius="15dp"
+            <corners android:bottomLeftRadius="5dp"
                 android:bottomRightRadius="0dp"
-                android:topLeftRadius="15dp"
+                android:topLeftRadius="5dp"
                 android:topRightRadius="0dp" />
         </shape>
     </item>

+ 4 - 4
Apex Mobile/app/src/main/res/drawable/segment_right_background.xml

@@ -7,9 +7,9 @@
 
             <corners
                 android:bottomLeftRadius="0dp"
-                android:bottomRightRadius="15dp"
+                android:bottomRightRadius="5dp"
                 android:topLeftRadius="0dp"
-                android:topRightRadius="15dp" />
+                android:topRightRadius="5dp" />
         </shape>
     </item>
 
@@ -19,9 +19,9 @@
             <solid android:color="#ffffff" />
             <corners
                 android:bottomLeftRadius="0dp"
-                android:bottomRightRadius="15dp"
+                android:bottomRightRadius="5dp"
                 android:topLeftRadius="0dp"
-                android:topRightRadius="15dp" />
+                android:topRightRadius="5dp" />
         </shape>
     </item>
 

+ 1 - 9
Apex Mobile/app/src/main/res/layout/activity_apex.xml

@@ -7,15 +7,7 @@
         android:layout_width="fill_parent"
         android:layout_height="fill_parent" >
 
-        <ImageView
-            android:id="@+id/iv_thumb"
-            android:layout_width="fill_parent"
-            android:layout_height="wrap_content"
-            android:layout_alignParentTop="true"
-            android:scaleType="fitXY"
-            android:src="@drawable/bg_4" 
-            
-            />
+
 
         <TabWidget
             android:id="@android:id/tabs"

+ 13 - 14
Apex Mobile/app/src/main/res/layout/activity_detail.xml

@@ -7,28 +7,27 @@
         android:layout_width="fill_parent"
         android:layout_height="fill_parent" >
 
-        <HorizontalScrollView
-            android:id="@+id/hs_tabs"
+
+        <TabWidget
+            android:id="@android:id/tabs"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:scrollbars="none" 
-            android:fillViewport="true"
-            android:layout_alignParentBottom="true" >
-
-            <TabWidget
-                android:id="@android:id/tabs"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                 />
-        </HorizontalScrollView>
-
+            android:layout_alignParentBottom="true"/>
         <FrameLayout
             android:id="@android:id/tabcontent"
             android:layout_width="fill_parent"
             android:layout_height="fill_parent"
-            android:layout_above="@+id/hs_tabs"
+            android:layout_above="@android:id/tabs"
             android:layout_alignParentLeft="true" >
+
         </FrameLayout>
+
+        <View
+            android:id="@+id/view2"
+            android:layout_width="match_parent"
+            android:layout_height="1dp"
+            android:layout_above="@android:id/tabs"
+            android:background="@drawable/bottom_shadow" />
     </RelativeLayout>
 
 </TabHost>

+ 20 - 8
Apex Mobile/app/src/main/res/layout/activity_history.xml

@@ -1,29 +1,41 @@
 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
     android:id="@+id/scrollView1"
     android:layout_width="fill_parent"
-    android:layout_height="wrap_content"
+    android:layout_height="match_parent"
     android:paddingBottom="@dimen/activity_vertical_margin"
     android:paddingLeft="@dimen/activity_horizontal_margin"
     android:paddingRight="@dimen/activity_horizontal_margin"
     android:paddingTop="@dimen/activity_vertical_margin"
     tools:context=".AboutActivity" >
 
-    <LinearLayout
+    <android.support.constraint.ConstraintLayout
+        android:id="@+id/linearLayout"
         android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:orientation="vertical" >
+        android:layout_height="match_parent">
 
         <ImageView
             android:id="@+id/iv_thumb"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:src="@drawable/apexlogo_2" />
+            android:layout_marginTop="13dp"
+            android:src="@drawable/apexlogo"
+            app:layout_constraintBottom_toTopOf="@+id/webView1"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toTopOf="parent"
+            app:layout_constraintVertical_chainStyle="packed" />
 
         <WebView
             android:id="@+id/webView1"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content" />
-    </LinearLayout>
+            android:layout_width="0dp"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="8dp"
+            android:background="@color/colorPrimary"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toBottomOf="@+id/iv_thumb" />
+    </android.support.constraint.ConstraintLayout>
 
 </ScrollView>

+ 1 - 1
Apex Mobile/app/src/main/res/layout/activity_location_detail.xml

@@ -11,7 +11,7 @@
     tools:context=".LocationDetailActivity" >
 
     <TextView
-        android:id="@+id/tv_msg"
+        android:id="@+id/tv_title"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         

+ 60 - 0
Apex Mobile/app/src/main/res/layout/announcement_cell.xml

@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:background="@drawable/list_bg"
+    android:orientation="vertical">
+
+    <android.support.constraint.ConstraintLayout
+        android:layout_width="match_parent"
+        android:layout_height="56dp">
+
+        <TextView
+            android:id="@+id/tv_title"
+            android:layout_width="0dp"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:layout_marginEnd="13dp"
+            android:layout_marginStart="7dp"
+            android:layout_marginTop="2dp"
+            android:layout_weight="1"
+            android:gravity="left"
+            android:text="Tool name"
+            android:textAlignment="viewStart"
+            android:textColor="@android:color/black"
+            android:textSize="12.7sp"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintStart_toEndOf="@+id/iv_thumb"
+            app:layout_constraintTop_toTopOf="parent" />
+
+        <ImageView
+            android:id="@+id/iv_thumb"
+            android:layout_width="42dp"
+            android:layout_height="42dp"
+            android:layout_marginStart="14dp"
+            android:src="@drawable/rect_market_news"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toTopOf="parent" />
+
+        <TextView
+            android:id="@+id/tv_content"
+            android:layout_width="0dp"
+            android:layout_height="0dp"
+            android:layout_marginBottom="2dp"
+            android:layout_marginEnd="13dp"
+            android:layout_marginStart="8dp"
+            android:layout_marginTop="2dp"
+            android:ellipsize="end"
+            android:lines="2"
+            android:text="TextView"
+            android:textSize="9.7sp"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintStart_toEndOf="@+id/iv_thumb"
+            app:layout_constraintTop_toBottomOf="@+id/tv_title" />
+    </android.support.constraint.ConstraintLayout>
+
+</LinearLayout>

+ 5 - 5
Apex Mobile/app/src/main/res/layout/detail_tracking_cell.xml

@@ -8,7 +8,7 @@
     android:background="@drawable/list_bg">
 
     <TextView
-        android:id="@+id/tv_msg"
+        android:id="@+id/tv_title"
         android:layout_width="0dp"
         android:layout_height="wrap_content"
         android:layout_gravity="center"
@@ -26,13 +26,13 @@
         android:textAlignment="viewStart"
         android:textColor="@android:color/black"
         android:textSize="14sp"
-        app:layout_constraintBottom_toBottomOf="@+id/iv_icon"
+        app:layout_constraintBottom_toBottomOf="@+id/iv_thumb"
         app:layout_constraintEnd_toEndOf="parent"
-        app:layout_constraintStart_toEndOf="@+id/iv_icon"
-        app:layout_constraintTop_toTopOf="@+id/iv_icon" />
+        app:layout_constraintStart_toEndOf="@+id/iv_thumb"
+        app:layout_constraintTop_toTopOf="@+id/iv_thumb" />
 
     <ImageView
-        android:id="@+id/iv_icon"
+        android:id="@+id/iv_thumb"
         android:layout_width="42dp"
         android:layout_height="42dp"
         android:layout_marginLeft="16dp"

+ 1 - 1
Apex Mobile/app/src/main/res/layout/documents_list_item.xml

@@ -4,7 +4,7 @@
     android:layout_height="wrap_content" >
 
     <ImageView
-        android:id="@+id/iv_icon"
+        android:id="@+id/iv_thumb"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:src="@drawable/ic_launcher" />

+ 1 - 1
Apex Mobile/app/src/main/res/layout/fragment_direct_tracking.xml

@@ -12,7 +12,7 @@
         android:orientation="vertical" >
 
         <TextView
-            android:id="@+id/tv_msg"
+            android:id="@+id/tv_title"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:text="Track your cargo by selected customers" />

+ 1 - 1
Apex Mobile/app/src/main/res/layout/fragment_tools.xml

@@ -4,7 +4,7 @@
     android:layout_height="wrap_content" >
 
     <ImageView
-        android:id="@+id/iv_icon"
+        android:id="@+id/iv_thumb"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:src="@drawable/ic_launcher"

+ 17 - 7
Apex Mobile/app/src/main/res/layout/fragment_web.xml

@@ -1,15 +1,25 @@
-<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
 
-    tools:context="com.usai.apex.WebActivity$PlaceholderFragment" >
+
+    android:id="@+id/relativeLayout">
 
     <WebView
         android:id="@+id/wv_content"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:layout_alignParentTop="true"
-        android:layout_centerHorizontal="true" />
+        android:layout_width="0dp"
+        android:layout_height="0dp"
+        android:layout_marginBottom="7dp"
+        android:layout_marginEnd="7dp"
+        android:layout_marginStart="7dp"
+        android:layout_marginTop="7dp"
+        android:scrollbarSize="5dp"
+        android:scrollbars="vertical"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintEnd_toEndOf="parent"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintTop_toTopOf="parent" />
 
-</RelativeLayout>
+</android.support.constraint.ConstraintLayout>

+ 6 - 6
Apex Mobile/app/src/main/res/layout/saved_cell.xml

@@ -12,7 +12,7 @@
         android:layout_height="56dp">
 
         <TextView
-            android:id="@+id/tv_msg"
+            android:id="@+id/tv_title"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
             android:layout_gravity="center"
@@ -26,11 +26,11 @@
             android:textColor="@android:color/black"
             android:textSize="14sp"
             app:layout_constraintEnd_toEndOf="parent"
-            app:layout_constraintStart_toEndOf="@+id/iv_icon"
-            app:layout_constraintTop_toTopOf="@+id/iv_icon" />
+            app:layout_constraintStart_toEndOf="@+id/iv_thumb"
+            app:layout_constraintTop_toTopOf="@+id/iv_thumb" />
 
         <ImageView
-            android:id="@+id/iv_icon"
+            android:id="@+id/iv_thumb"
             android:layout_width="42dp"
             android:layout_height="42dp"
             android:layout_marginStart="16dp"
@@ -47,8 +47,8 @@
             android:lines="1"
             android:text="TextView"
             android:textSize="9.7sp"
-            app:layout_constraintStart_toEndOf="@+id/iv_icon"
-            app:layout_constraintTop_toBottomOf="@+id/tv_msg" />
+            app:layout_constraintStart_toEndOf="@+id/iv_thumb"
+            app:layout_constraintTop_toBottomOf="@+id/tv_title" />
 
     </android.support.constraint.ConstraintLayout>
 

+ 6 - 6
Apex Mobile/app/src/main/res/layout/saved_doc.xml

@@ -12,7 +12,7 @@
         android:layout_height="56dp">
 
         <TextView
-            android:id="@+id/tv_msg"
+            android:id="@+id/tv_title"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
             android:layout_gravity="center"
@@ -26,11 +26,11 @@
             android:textColor="@android:color/black"
             android:textSize="14sp"
             app:layout_constraintEnd_toStartOf="@+id/iv_share"
-            app:layout_constraintStart_toEndOf="@+id/iv_icon"
-            app:layout_constraintTop_toTopOf="@+id/iv_icon" />
+            app:layout_constraintStart_toEndOf="@+id/iv_thumb"
+            app:layout_constraintTop_toTopOf="@+id/iv_thumb" />
 
         <ImageView
-            android:id="@+id/iv_icon"
+            android:id="@+id/iv_thumb"
             android:layout_width="42dp"
             android:layout_height="42dp"
             android:layout_marginStart="16dp"
@@ -46,8 +46,8 @@
             android:lines="1"
             android:text="TextView"
             android:textSize="9.7sp"
-            app:layout_constraintStart_toStartOf="@+id/tv_msg"
-            app:layout_constraintTop_toBottomOf="@+id/tv_msg" />
+            app:layout_constraintStart_toStartOf="@+id/tv_title"
+            app:layout_constraintTop_toBottomOf="@+id/tv_title" />
 
         <ImageView
             android:id="@+id/iv_share"

+ 6 - 6
Apex Mobile/app/src/main/res/layout/static_modelist_cell.xml

@@ -12,7 +12,7 @@
         android:layout_height="56dp">
 
         <TextView
-            android:id="@+id/tv_msg"
+            android:id="@+id/tv_title"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
             android:layout_gravity="center"
@@ -26,11 +26,11 @@
             android:textColor="@android:color/black"
             android:textSize="14sp"
             app:layout_constraintEnd_toEndOf="parent"
-            app:layout_constraintStart_toEndOf="@+id/iv_icon"
-            app:layout_constraintTop_toTopOf="@+id/iv_icon" />
+            app:layout_constraintStart_toEndOf="@+id/iv_thumb"
+            app:layout_constraintTop_toTopOf="@+id/iv_thumb" />
 
         <ImageView
-            android:id="@+id/iv_icon"
+            android:id="@+id/iv_thumb"
             android:layout_width="42dp"
             android:layout_height="42dp"
             android:layout_marginStart="16dp"
@@ -47,8 +47,8 @@
             android:lines="1"
             android:text="TextView"
             android:textSize="9.7sp"
-            app:layout_constraintStart_toEndOf="@+id/iv_icon"
-            app:layout_constraintTop_toBottomOf="@+id/tv_msg" />
+            app:layout_constraintStart_toEndOf="@+id/iv_thumb"
+            app:layout_constraintTop_toBottomOf="@+id/tv_title" />
     </android.support.constraint.ConstraintLayout>
 
 </LinearLayout>

+ 1 - 1
Apex Mobile/app/src/main/res/values/colors.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <resources>
-    <color name="colorPrimary">#FAFAFA</color>
+    <color name="colorPrimary">#fafafa</color>
     <color name="tab_bg">#F7f7f7</color>
 
     <color name="colorPrimaryDark">#303F9F</color>

+ 7 - 7
Apex Mobile/app/src/main/res/values/styles.xml

@@ -31,13 +31,13 @@
 <resources>
 
     <!-- Base application theme. -->
-    <style name="AppTheme" parent="Theme.AppCompat.Light">
-        <!-- Customize your theme here. -->
-        <item name="colorPrimary">@color/colorPrimary</item>
-        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
-        <item name="colorAccent">@color/colorAccent</item>
-        <!--<item name="textColorPrimary">@color/icon_gray</item>-->
-    </style>
+    <!--<style name="AppTheme" parent="Theme.AppCompat.Light">-->
+        <!--&lt;!&ndash; Customize your theme here. &ndash;&gt;-->
+        <!--<item name="colorPrimary">@color/colorPrimary</item>-->
+        <!--<item name="colorPrimaryDark">@color/colorPrimaryDark</item>-->
+        <!--<item name="colorAccent">@color/colorAccent</item>-->
+        <!--&lt;!&ndash;<item name="textColorPrimary">@color/icon_gray</item>&ndash;&gt;-->
+    <!--</style>-->
 
 
     <style name="LoginFormContainer">

BIN
Apex Mobile/captures/com.usai.apex_2018.03.01_09.54.li