This commit is contained in:
Rue Ji
2026-01-27 22:29:54 +08:00
parent 7299fa8214
commit b8472badf6
23 changed files with 933 additions and 463 deletions

View File

@ -4,6 +4,17 @@
<selectionStates>
<SelectionState runConfigName="app">
<option name="selectionMode" value="DROPDOWN" />
<DropdownSelection timestamp="2026-01-24T13:39:13.245162Z">
<Target type="DEFAULT_BOOT">
<handle>
<DeviceId pluginId="LocalEmulator" identifier="path=/Users/admin/.android/avd/Pixel_6.avd" />
</handle>
</Target>
</DropdownSelection>
<DialogSelection />
</SelectionState>
<SelectionState runConfigName="WorkSpace.JSPatrol.app">
<option name="selectionMode" value="DROPDOWN" />
</SelectionState>
</selectionStates>
</component>

1
.idea/misc.xml generated
View File

@ -1,4 +1,3 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="temurin-11" project-jdk-type="JavaSDK">

View File

@ -0,0 +1,450 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>GIS管网管理</title>
<!-- OpenLayers CSS -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/ol@v7.4.0/ol.css">
<style>
body, html { margin: 0; padding: 0; height: 100%; width: 100%; overflow: hidden; font-family: sans-serif; }
#map { width: 100%; height: 100%; }
/* UI Controls */
.ui-panel {
position: absolute;
top: 10px;
right: 10px;
background: rgba(255, 255, 255, 0.9);
padding: 10px;
border-radius: 4px;
box-shadow: 0 2px 6px rgba(0,0,0,0.3);
z-index: 1000;
max-width: 200px;
}
.ui-group { margin-bottom: 10px; border-bottom: 1px solid #eee; padding-bottom: 5px; }
.ui-group:last-child { border-bottom: none; }
.ui-title { font-weight: bold; font-size: 14px; margin-bottom: 5px; }
button {
display: block;
width: 100%;
margin: 2px 0;
padding: 5px;
font-size: 12px;
cursor: pointer;
background: #007bff;
color: white;
border: none;
border-radius: 2px;
}
button:hover { background: #0056b3; }
button.active { background: #004494; border: 2px solid #002a5c; }
select { width: 100%; padding: 5px; margin-bottom: 5px; }
/* Popup */
.ol-popup {
position: absolute;
background-color: white;
box-shadow: 0 1px 4px rgba(0,0,0,0.2);
padding: 15px;
border-radius: 10px;
border: 1px solid #cccccc;
bottom: 12px;
left: -50px;
min-width: 200px;
}
.ol-popup:after, .ol-popup:before {
top: 100%;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none;
}
.ol-popup:after {
border-top-color: white;
border-width: 10px;
left: 48px;
margin-left: -10px;
}
.ol-popup:before {
border-top-color: #cccccc;
border-width: 11px;
left: 48px;
margin-left: -11px;
}
.ol-popup-closer {
text-decoration: none;
position: absolute;
top: 2px;
right: 8px;
color: #999;
}
.ol-popup-closer:after { content: "✖"; }
/* Legend */
.legend {
position: absolute;
bottom: 20px;
left: 10px;
background: rgba(255,255,255,0.8);
padding: 10px;
border-radius: 4px;
z-index: 1000;
font-size: 12px;
}
.legend-item { display: flex; align-items: center; margin-bottom: 5px; }
.color-box { width: 20px; height: 5px; margin-right: 5px; }
.point-circle { width: 10px; height: 10px; border-radius: 50%; margin-right: 5px; }
</style>
</head>
<body>
<div id="map"></div>
<!-- Popup Overlay -->
<div id="popup" class="ol-popup">
<a href="#" id="popup-closer" class="ol-popup-closer"></a>
<div id="popup-content"></div>
</div>
<!-- UI Panel -->
<div class="ui-panel">
<div class="ui-group">
<div class="ui-title">底图切换</div>
<select id="baseLayerSelect" onchange="switchBaseLayer(this.value)">
<option value="OSM">OpenStreetMap</option>
<option value="GAODE">高德地图</option>
<option value="TIANDITU">天地图 (矢量)</option>
<option value="TIANDITU_IMG">天地图 (影像)</option>
</select>
</div>
<div class="ui-group">
<div class="ui-title">工具箱</div>
<button onclick="toggleMeasure('LineString')">测距</button>
<button onclick="toggleMeasure('Polygon')">测面</button>
<button onclick="clearMeasure()">清除测量</button>
</div>
<div class="ui-group">
<div class="ui-title">管网维护</div>
<button id="btn-add-pipe" onclick="startEdit('Pipe')">新增管线</button>
<button id="btn-add-station" onclick="startEdit('Station')">新增泵站</button>
<button onclick="stopEdit()">结束编辑</button>
<button onclick="deleteSelected()">删除选中</button>
</div>
<div class="ui-group">
<div class="ui-title">数据管理</div>
<button onclick="importCAD()">导入CAD (模拟)</button>
<button onclick="exportData()">导出数据</button>
</div>
</div>
<div class="legend">
<div class="ui-title">图例</div>
<div class="legend-item"><div class="color-box" style="background:blue;"></div>供水管线</div>
<div class="legend-item"><div class="color-box" style="background:red;"></div>污水管线</div>
<div class="legend-item"><div class="point-circle" style="background:green;"></div>正常泵站</div>
<div class="legend-item"><div class="point-circle" style="background:gray;"></div>离线泵站</div>
</div>
<!-- OpenLayers JS -->
<script src="https://cdn.jsdelivr.net/npm/ol@v7.4.0/dist/ol.js"></script>
<script>
// --- Configuration ---
// Note: In a real app, API keys should be secure or proxy-based.
const TIANDITU_KEY = 'YOUR_TIANDITU_KEY_HERE'; // Replace with valid key
// --- Map Initialization ---
const map = new ol.Map({
target: 'map',
view: new ol.View({
center: ol.proj.fromLonLat([121.47, 31.23]), // Shanghai
zoom: 12
}),
controls: ol.control.defaults.defaults().extend([
new ol.control.ScaleLine(),
new ol.control.FullScreen()
])
});
// --- Base Layers ---
const baseLayers = {
'OSM': new ol.layer.Tile({
source: new ol.source.OSM(),
visible: true
}),
'GAODE': new ol.layer.Tile({
source: new ol.source.XYZ({
url: 'https://wprd0{1-4}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&style=7&x={x}&y={y}&z={z}'
}),
visible: false
}),
'TIANDITU': new ol.layer.Tile({
source: new ol.source.XYZ({
url: `http://t{0-7}.tianditu.gov.cn/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=${TIANDITU_KEY}`
}),
visible: false
}),
'TIANDITU_IMG': new ol.layer.Tile({
source: new ol.source.XYZ({
url: `http://t{0-7}.tianditu.gov.cn/DataServer?T=img_w&x={x}&y={y}&l={z}&tk=${TIANDITU_KEY}`
}),
visible: false
})
};
for (let key in baseLayers) {
map.addLayer(baseLayers[key]);
}
function switchBaseLayer(type) {
for (let key in baseLayers) {
baseLayers[key].setVisible(key === type);
}
}
// --- Business Layers (Pipe & Station) ---
const vectorSource = new ol.source.Vector();
const vectorLayer = new ol.layer.Vector({
source: vectorSource,
style: function(feature) {
const type = feature.get('type');
const status = feature.get('status');
if (type === 'Pipe') {
return new ol.style.Style({
stroke: new ol.style.Stroke({
color: feature.get('pipeType') === 'Sewage' ? 'red' : 'blue',
width: 3
})
});
} else if (type === 'Station') {
return new ol.style.Style({
image: new ol.style.Circle({
radius: 7,
fill: new ol.style.Fill({ color: status === 'Online' ? 'green' : 'gray' }),
stroke: new ol.style.Stroke({ color: 'white', width: 2 })
}),
text: new ol.style.Text({
text: feature.get('name'),
offsetY: -15,
fill: new ol.style.Fill({ color: '#000' }),
stroke: new ol.style.Stroke({ color: '#fff', width: 2 })
})
});
}
}
});
map.addLayer(vectorLayer);
// --- Mock Data ---
function loadMockData() {
// Pipe
const pipe = new ol.Feature({
geometry: new ol.geom.LineString([
ol.proj.fromLonLat([121.46, 31.23]),
ol.proj.fromLonLat([121.48, 31.23])
]),
type: 'Pipe',
pipeType: 'Water',
id: 'P001'
});
// Station
const station = new ol.Feature({
geometry: new ol.geom.Point(ol.proj.fromLonLat([121.47, 31.235])),
type: 'Station',
name: '1号泵站',
status: 'Online',
flow: '500m³/h',
level: '3.5m'
});
vectorSource.addFeatures([pipe, station]);
}
loadMockData();
// --- Interaction: Popup ---
const container = document.getElementById('popup');
const content = document.getElementById('popup-content');
const closer = document.getElementById('popup-closer');
const overlay = new ol.Overlay({
element: container,
autoPan: true,
autoPanAnimation: { duration: 250 }
});
map.addOverlay(overlay);
closer.onclick = function() {
overlay.setPosition(undefined);
closer.blur();
return false;
};
map.on('singleclick', function(evt) {
if (drawInteraction) return; // Don't popup when drawing
const feature = map.forEachFeatureAtPixel(evt.pixel, function(feature) {
return feature;
});
if (feature) {
const coordinate = evt.coordinate;
const type = feature.get('type');
let html = '';
if (type === 'Station') {
html = `<b>${feature.get('name')}</b><br>
状态: ${feature.get('status')}<br>
流量: ${feature.get('flow')}<br>
液位: ${feature.get('level')}`;
} else if (type === 'Pipe') {
html = `<b>管线 ID: ${feature.get('id')}</b><br>
类型: ${feature.get('pipeType') === 'Sewage' ? '污水' : '供水'}`;
}
content.innerHTML = html;
overlay.setPosition(coordinate);
} else {
overlay.setPosition(undefined);
}
});
// --- Interaction: Draw & Modify ---
let drawInteraction;
const modifyInteraction = new ol.interaction.Modify({ source: vectorSource });
const selectInteraction = new ol.interaction.Select();
map.addInteraction(modifyInteraction);
map.addInteraction(selectInteraction);
function startEdit(type) {
stopEdit(); // Clear previous
let geometryType = type === 'Station' ? 'Point' : 'LineString';
drawInteraction = new ol.interaction.Draw({
source: vectorSource,
type: geometryType
});
drawInteraction.on('drawend', function(evt) {
const feature = evt.feature;
feature.set('type', type);
if (type === 'Station') {
feature.set('name', '新泵站');
feature.set('status', 'Online');
} else {
feature.set('pipeType', 'Water');
feature.set('id', 'New-' + Date.now());
}
});
map.addInteraction(drawInteraction);
// UI feedback
document.querySelectorAll('button').forEach(b => b.classList.remove('active'));
if(type === 'Pipe') document.getElementById('btn-add-pipe').classList.add('active');
if(type === 'Station') document.getElementById('btn-add-station').classList.add('active');
}
function stopEdit() {
if (drawInteraction) {
map.removeInteraction(drawInteraction);
drawInteraction = null;
}
document.querySelectorAll('button').forEach(b => b.classList.remove('active'));
}
function deleteSelected() {
const selectedFeatures = selectInteraction.getFeatures();
selectedFeatures.forEach(function(feature) {
vectorSource.removeFeature(feature);
});
selectedFeatures.clear();
overlay.setPosition(undefined);
}
// --- Tools: Measure ---
let measureDraw;
function toggleMeasure(type) {
stopEdit();
if (measureDraw) map.removeInteraction(measureDraw);
measureDraw = new ol.interaction.Draw({
source: new ol.source.Vector(),
type: type
});
measureDraw.on('drawstart', function(evt) {
// Simplified measurement logic for demo
// In real app, create tooltips and calculate length/area using ol.sphere
});
measureDraw.on('drawend', function(evt) {
const geom = evt.feature.getGeometry();
let output;
if (geom instanceof ol.geom.Polygon) {
output = '面积: ' + (geom.getArea() / 1000000).toFixed(2) + ' km²';
} else if (geom instanceof ol.geom.LineString) {
output = '距离: ' + (geom.getLength() / 1000).toFixed(2) + ' km';
}
alert(output);
map.removeInteraction(measureDraw); // Stop after one measure
});
map.addInteraction(measureDraw);
}
function clearMeasure() {
// Logic to clear measurement overlays would go here
if (measureDraw) map.removeInteraction(measureDraw);
}
// --- Data Import/Export ---
function importCAD() {
// Mock implementation
// In reality, this would trigger a file input, upload to server,
// server converts DWG -> GeoJSON, returns GeoJSON, then:
// const format = new ol.format.GeoJSON();
// const features = format.readFeatures(jsonData);
// vectorSource.addFeatures(features);
alert("模拟导入CAD图纸成功已转换为GeoJSON并加载。");
// Add a mock feature representing CAD import
const cadFeature = new ol.Feature({
geometry: new ol.geom.LineString([
ol.proj.fromLonLat([121.465, 31.225]),
ol.proj.fromLonLat([121.475, 31.225])
]),
type: 'Pipe',
pipeType: 'Sewage',
id: 'CAD-001'
});
vectorSource.addFeature(cadFeature);
}
function exportData() {
const format = new ol.format.GeoJSON();
const features = vectorSource.getFeatures();
const json = format.writeFeatures(features);
console.log(json);
alert("数据已导出 (查看控制台)");
// Can implement file download here
}
// --- Android Interface ---
// If loaded in Android WebView, this allows Android to call JS
window.locateDevice = function(lat, lon) {
const coords = ol.proj.fromLonLat([lon, lat]);
map.getView().animate({ center: coords, zoom: 15 });
// Add marker for user location
const userFeature = new ol.Feature({
geometry: new ol.geom.Point(coords),
type: 'Station', // Reuse station style or define new
name: '当前位置',
status: 'Online'
});
vectorSource.addFeature(userFeature);
};
</script>
</body>
</html>

View File

@ -567,7 +567,9 @@ public class PointHistoryActivity extends AppCompatActivity implements OnChartVa
}
TextView tvname =(TextView)findViewById(R.id.tv_name);
tvname.setText(intent.getStringExtra("name"));
if (point != null) {
tvname.setText(point.getName());
}
}

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#DADDE2"/>
<corners android:radius="25dp"/>
</shape>

View File

@ -3,5 +3,5 @@
android:shape="rectangle">
<stroke android:width="1dp" android:color="#ffdcdcdc" />
<solid android:color="#fff2f2f2" />
<corners android:radius="17dp" />
<corners android:radius="25dp" />
</shape>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#33FFFFFF"/>
<corners android:radius="8dp"/>
</shape>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<corners android:radius="3dp"/>
<corners android:radius="25dp"/>
<solid android:color="@color/color_luc_blue_btn"/>
<stroke android:width="1px" android:color="@color/color_luc_blue_btn"/>
</shape>

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<corners android:radius="3dp"/>
<corners android:radius="25dp"/>
<solid android:color="@color/color_gr_white"/>
<stroke android:width="1px" android:color="@color/color_gr_white"/>
</shape>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="25dp"/>
<solid android:color="#33FFFFFF"/>
<stroke android:width="1dp" android:color="#80FFFFFF"/>
</shape>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/white"/>
<corners android:radius="16dp"/>
</shape>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#F5F5F5"/>
<corners android:radius="8dp"/>
</shape>

View File

@ -23,42 +23,44 @@
android:id="@+id/moudle_fg_main_ll_top"
android:layout_width="match_parent"
android:layout_height="30dp"
android:layout_marginTop="10dp"
android:layout_marginTop="15dp"
android:layout_marginLeft="12dp"
android:layout_marginRight="12dp"
android:orientation="horizontal">
<TextView
android:layout_width="72dp"
android:layout_width="wrap_content"
android:layout_height="30dp"
android:gravity="center"
android:text="当前厂区"
android:textColor="#80ffffff"
android:textSize="14sp" />
android:textColor="#CCffffff"
android:textSize="15sp"
android:paddingLeft="5dp"
android:paddingRight="5dp"/>
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:layout_height="15dp"
android:layout_gravity="center_vertical"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:background="#80ffffff" />
<LinearLayout
android:layout_width="150dp"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="horizontal">
<TextView
android:id="@+id/moudle_fg_main_tv_bizname"
android:layout_width="130dp"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:ellipsize="end"
android:gravity="center_vertical"
android:maxLines="1"
android:paddingLeft="5dp"
android:textColor="@color/white"
android:textSize="16sp" />
<!-- <ImageView-->
<!-- android:layout_width="20dp"-->
<!-- android:padding="3dp"-->
<!-- android:layout_height="match_parent"-->
<!-- android:src="@mipmap/moudle_iv_arrow_down"/>-->
android:textStyle="bold"
android:textSize="18sp" />
</LinearLayout>
<View
@ -69,7 +71,6 @@
<ImageView
android:layout_width="30dp"
android:layout_height="match_parent"
android:layout_marginRight="8dp"
android:padding="4dp"
android:src="@mipmap/moudle_iv_message"
android:visibility="gone" />
@ -78,99 +79,97 @@
<LinearLayout
android:id="@+id/moudle_fg_main_ll_task"
android:layout_width="match_parent"
android:layout_height="75dp"
android:layout_height="wrap_content"
android:layout_below="@+id/moudle_fg_main_ll_top"
android:layout_marginTop="10dp"
android:orientation="horizontal">
<View
android:layout_width="20dp"
android:layout_height="match_parent" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="70dp"
android:layout_weight="1"
android:layout_marginTop="15dp"
android:paddingLeft="12dp"
android:paddingRight="12dp"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
android:orientation="horizontal"
android:background="@drawable/bg_home_stat_item"
android:padding="5dp">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center">
<ImageView
android:layout_width="match_parent"
android:layout_height="55dp"
android:paddingLeft="5dp"
android:paddingTop="8dp"
android:paddingRight="5dp"
android:layout_width="30dp"
android:layout_height="30dp"
android:src="@mipmap/moudle_all_count" />
<TextView
android:layout_width="match_parent"
android:layout_height="15dp"
android:gravity="center_horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="今日任务"
android:textColor="@color/white"
android:textSize="12sp" />
android:textSize="12sp"
android:layout_marginTop="2dp"/>
</LinearLayout>
<TextView
android:id="@+id/moudle_main_fg_task_all"
android:layout_width="0dp"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_vertical"
android:paddingLeft="8dp"
android:gravity="center"
android:text="0"
android:textColor="@color/white"
android:textSize="26sp" />
android:textSize="20sp"
android:textStyle="bold"
android:layout_marginRight="10dp"/>
</LinearLayout>
<View
android:layout_width="15dp"
android:layout_width="10dp"
android:layout_height="match_parent" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="70dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="horizontal">
android:orientation="horizontal"
android:background="@drawable/bg_home_stat_item"
android:padding="5dp">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
android:orientation="vertical"
android:gravity="center">
<ImageView
android:layout_width="match_parent"
android:layout_height="55dp"
android:paddingLeft="5dp"
android:paddingTop="0dp"
android:paddingRight="5dp"
android:layout_width="30dp"
android:layout_height="30dp"
android:src="@mipmap/moudle_uncom_count" />
<TextView
android:layout_width="match_parent"
android:layout_height="15dp"
android:gravity="center_horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="未提交"
android:textColor="@color/white"
android:textSize="12sp" />
android:textSize="12sp"
android:layout_marginTop="2dp"/>
</LinearLayout>
<TextView
android:id="@+id/moudle_main_fg_task_unsub"
android:layout_width="0dp"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_vertical"
android:paddingLeft="8dp"
android:gravity="center"
android:text="0"
android:textColor="@color/white"
android:textSize="26sp" />
android:textSize="20sp"
android:textStyle="bold"
android:layout_marginRight="10dp"/>
</LinearLayout>
<View
@ -179,66 +178,62 @@
<LinearLayout
android:layout_width="0dp"
android:layout_height="70dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="horizontal">
android:orientation="horizontal"
android:background="@drawable/bg_home_stat_item"
android:padding="5dp">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
android:orientation="vertical"
android:gravity="center">
<ImageView
android:layout_width="match_parent"
android:layout_height="55dp"
android:paddingLeft="5dp"
android:paddingTop="8dp"
android:paddingRight="5dp"
android:layout_width="30dp"
android:layout_height="30dp"
android:src="@mipmap/moudle_com_count" />
<TextView
android:layout_width="match_parent"
android:layout_height="15dp"
android:gravity="center_horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="已提交"
android:textColor="@color/white"
android:textSize="12sp" />
android:textSize="12sp"
android:layout_marginTop="2dp"/>
</LinearLayout>
<TextView
android:id="@+id/moudle_main_fg_task_sub"
android:layout_width="0dp"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_vertical"
android:paddingLeft="8dp"
android:gravity="center"
android:text="0"
android:textColor="@color/white"
android:textSize="26sp" />
android:textSize="20sp"
android:textStyle="bold"
android:layout_marginRight="10dp"/>
</LinearLayout>
<View
android:layout_width="10dp"
android:layout_height="match_parent" />
</LinearLayout>
<androidx.cardview.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/moudle_fg_main_ll_task"
android:layout_marginLeft="16dp"
android:layout_marginTop="10dp"
android:layout_marginRight="16dp"
android:layout_marginBottom="5dp"
android:elevation="2dp"
app:cardCornerRadius="4dp">
android:layout_marginLeft="12dp"
android:layout_marginTop="15dp"
android:layout_marginRight="12dp"
android:layout_marginBottom="10dp"
android:elevation="6dp"
app:cardCornerRadius="12dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="10dp">
android:padding="15dp">
<LinearLayout
android:layout_width="match_parent"
@ -311,55 +306,52 @@
<LinearLayout
android:layout_width="match_parent"
android:layout_height="28dp"
android:layout_marginBottom="10dp"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center"
android:layout_height="wrap_content"
android:text="当前任务: "
android:textColor="@color/black"
android:textSize="14sp" />
android:textSize="16sp"
android:textStyle="bold"/>
<TextView
android:id="@+id/moudle_fg_main_tv_duration"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center"
android:layout_height="wrap_content"
android:hint="暂无任务"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:textColor="#808388"
android:textSize="13sp" />
android:textSize="14sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="28dp"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center_vertical"
android:text="任务:"
android:layout_height="wrap_content"
android:text="任务内容:"
android:textColor="@color/black"
android:textSize="13sp" />
android:textSize="14sp" />
<TextView
android:id="@+id/moudle_fg_main_tv_task_name"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_height="wrap_content"
android:ellipsize="end"
android:gravity="center"
android:hint="暂无任务"
android:maxLines="1"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:textColor="#808388"
android:textSize="13sp" />
android:textSize="14sp" />
</LinearLayout>
</LinearLayout>
</androidx.cardview.widget.CardView>
@ -367,10 +359,10 @@
<LinearLayout
android:layout_width="match_parent"
android:layout_height="60dp"
android:layout_marginLeft="10dp"
android:layout_marginTop="10dp"
android:layout_marginRight="10dp"
android:layout_height="70dp"
android:layout_marginLeft="12dp"
android:layout_marginTop="15dp"
android:layout_marginRight="12dp"
android:orientation="horizontal">
<RelativeLayout
@ -600,10 +592,11 @@
<LinearLayout
android:layout_width="match_parent"
android:layout_height="60dp"
android:layout_marginLeft="10dp"
android:layout_height="70dp"
android:layout_marginLeft="12dp"
android:layout_marginTop="10dp"
android:layout_marginRight="10dp"
android:layout_marginBottom="10dp"
android:layout_marginRight="12dp"
android:orientation="horizontal">
<RelativeLayout
android:id="@+id/moudle_main_fg_rl_alarm"
@ -782,15 +775,16 @@
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="3dp">
android:layout_marginBottom="5dp"
android:layout_marginTop="10dp">
<com.gigamole.navigationtabstrip.NavigationTabStrip
android:id="@+id/moudle_fg_main_tab"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_height="45dp"
android:layout_gravity="center"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginLeft="12dp"
android:layout_marginRight="12dp"
app:nts_active_color="@color/blue_text"
app:nts_color="@color/blue_text"
app:nts_corners_radius="2dp"
@ -815,8 +809,7 @@
android:id="@+id/moudle_main_fg_rc_msg"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="10dp"
android:paddingRight="10dp" />
android:layout_marginTop="5dp"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>

View File

@ -14,25 +14,26 @@
<TextView
android:id="@+id/tv_name"
android:background="@drawable/bg_layout_shape_factory"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="6dp"
android:text="测量点名"
android:gravity="center"
android:layout_gravity="center"
android:padding="8dp"
android:textSize="16sp"/>
android:layout_margin="12dp"
android:background="@drawable/bg_setting_card"
android:gravity="center"
android:padding="10dp"
android:text="测量点名"
android:textColor="#333333"
android:textSize="16sp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:layout_height="40dp" >
android:layout_marginLeft="12dp"
android:layout_marginRight="12dp"
android:layout_height="45dp" >
<TextView
android:id="@+id/et_startdate"
android:layout_width="0dp"
android:layout_height="34dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:background="@drawable/bg_date_select"
@ -50,7 +51,7 @@
<TextView
android:id="@+id/et_enddate"
android:layout_width="0dp"
android:layout_height="34dp"
android:layout_height="match_parent"
android:gravity="center"
android:background="@drawable/bg_date_select"
android:padding="5dp"
@ -65,9 +66,9 @@
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginTop="8dp"
android:padding="3dp"
android:layout_height="45dp"
android:layout_marginTop="12dp"
android:padding="0dp"
android:gravity="center">
<Button
android:id="@+id/but_last"
@ -78,7 +79,7 @@
android:background="@drawable/bg_layout_shape_btn_blue"
android:textColor="#FFFFFF"
android:layout_marginRight="7dp"
android:layout_marginLeft="10dp"/>
android:layout_marginLeft="12dp"/>
<Button
android:id="@+id/but_search"
android:layout_width="0dp"
@ -98,7 +99,7 @@
android:background="@drawable/bg_layout_shape_btn_blue"
android:textColor="#FFFFFF"
android:layout_marginLeft="7dp"
android:layout_marginRight="10dp"/>
android:layout_marginRight="12dp"/>
</LinearLayout>
<LinearLayout

View File

@ -186,7 +186,6 @@
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/production_monitor_recycleview"
android:padding="8dp"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>

View File

@ -1,13 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:background="@color/white"
android:padding="2dp"
android:layout_marginLeft="3dp"
android:layout_marginRight="3dp"
android:layout_marginTop="3dp"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="35dp">
android:layout_height="45dp">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
@ -17,10 +13,12 @@
android:id="@+id/tv_down_sp"
android:textColor="#5F5F5F"
android:layout_gravity="center_vertical"
android:gravity="center"
android:paddingRight="40dp"
android:gravity="center_vertical"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:singleLine="true"
android:ellipsize="end"
android:textSize="15sp"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</LinearLayout>

View File

@ -3,33 +3,41 @@
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="48dp"
android:layout_marginTop="5dp"
android:layout_height="wrap_content"
android:clickable="true"
app:ios="false"
app:leftSwipe="true"
app:swipeEnable="true">
<androidx.cardview.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="12dp"
android:layout_marginRight="12dp"
android:layout_marginTop="6dp"
android:layout_marginBottom="6dp"
app:cardCornerRadius="12dp"
app:cardElevation="2dp"
app:cardBackgroundColor="@color/white">
<LinearLayout
android:id="@+id/moudle_point_ll_all"
android:clickable="true"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:background="?android:attr/selectableItemBackground"
android:orientation="horizontal"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_width="match_parent"
android:layout_height="45dp">
android:layout_height="70dp"
android:gravity="center_vertical">
<RelativeLayout
android:layout_width="51dp"
android:layout_height="48dp">
android:layout_width="60dp"
android:layout_height="match_parent">
<ImageView
android:id="@+id/moudle_measurepoint_iv"
android:layout_marginTop="3dp"
android:padding="8dp"
android:layout_marginLeft="3dp"
android:layout_centerInParent="true"
android:src="@mipmap/iv_cod"
android:layout_width="45dp"
android:layout_height="45dp" />
android:layout_width="40dp"
android:layout_height="40dp" />
<com.haozhang.lib.SlantedTextView
android:id="@+id/moudle_measurepoint_st"
android:visibility="gone"
@ -44,61 +52,55 @@
app:slantedTextSize="8sp"
/>
</RelativeLayout>
<LinearLayout
android:orientation="vertical"
android:layout_weight="6"
android:layout_width="0dp"
android:layout_height="45dp">
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="44dp">
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="match_parent"
android:gravity="center_vertical">
<TextView
android:id="@+id/point_name"
android:textColor="@color/black"
android:gravity="center_vertical"
android:textSize="15sp"
android:paddingTop="5dp"
android:layout_weight="6"
android:textSize="16sp"
android:textStyle="bold"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="match_parent" />
<TextView
android:textSize="15sp"
android:id="@+id/point_value"
android:textSize="16sp"
android:textColor="@color/black"
android:gravity="center"
android:paddingTop="5dp"
android:paddingLeft="5dp"
android:layout_weight="3"
android:layout_width="0dp"
android:layout_height="match_parent" />
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:paddingLeft="10dp"
android:paddingRight="10dp"/>
<ImageView
android:padding="9dp"
android:padding="12dp"
android:src="@mipmap/green_btn"
android:id="@+id/point_btn"
android:layout_weight="3"
android:layout_width="0dp"
android:layout_height="45dp" />
</LinearLayout>
<View
android:background="@color/gray01"
android:layout_width="match_parent"
android:layout_height="0.7dp"/>
android:layout_width="45dp"
android:layout_height="45dp"
android:layout_gravity="center_vertical"/>
</LinearLayout>
</LinearLayout>
</androidx.cardview.widget.CardView>
<Button
android:id="@+id/moudle_item_btn_collecte"
android:layout_width="wrap_content"
android:background="@drawable/btn_press"
android:layout_height="match_parent"
android:paddingLeft="5dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:visibility="gone"
android:paddingRight="5dp"
android:textSize="14sp"
android:clickable="true"
android:text="收藏"

View File

@ -6,20 +6,44 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<ImageView
android:layout_width="260dp"
android:layout_height="100dp"
android:layout_gravity="center"
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="70dp"
android:src="@mipmap/moudle_ic_yl_logo" />
android:gravity="center"
android:orientation="vertical">
<ImageView
android:layout_width="80dp"
android:layout_height="80dp"
android:src="@mipmap/logo" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="碳谷绿湾"
android:textColor="@color/white"
android:textSize="22sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:text="源网一体化管控平台"
android:textColor="@color/white"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/login_linearLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="25dp"
android:layout_marginLeft="15dp"
android:layout_marginTop="20dp"
android:layout_marginRight="25dp"
android:layout_marginRight="15dp"
android:orientation="vertical">
<LinearLayout
@ -30,10 +54,13 @@
<LinearLayout
android:id="@+id/userId_LinearLayout"
android:layout_width="260dp"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:orientation="horizontal">
android:layout_width="match_parent"
android:layout_height="50dp"
android:orientation="horizontal"
android:background="@drawable/bg_login_input"
android:gravity="center_vertical"
android:paddingLeft="10dp"
android:paddingRight="10dp">
<ImageView
android:layout_width="34dp"
@ -45,13 +72,13 @@
android:id="@+id/moudle_login_edt_name"
android:textCursorDrawable="@null"
android:layout_width="0dp"
android:layout_height="34dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:hint="用户名"
android:background="@null"
android:ems="10"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:singleLine="true"
android:textColor="@color/white"
android:textColorHint="@color/white"
@ -61,19 +88,15 @@
</LinearLayout>
<!-- 横线 -->
<View
android:layout_width="250dp"
android:layout_height="0.3dp"
android:layout_gravity="center_horizontal"
android:background="#E5E5E5" />
<LinearLayout
android:layout_width="260dp"
android:layout_marginTop="25dp"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:orientation="horizontal">
android:layout_width="match_parent"
android:layout_marginTop="20dp"
android:layout_height="50dp"
android:orientation="horizontal"
android:background="@drawable/bg_login_input"
android:gravity="center_vertical"
android:paddingLeft="10dp"
android:paddingRight="10dp">
<ImageView
android:layout_width="34dp"
@ -85,13 +108,13 @@
android:id="@+id/moudle_login_edt_pwd"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="34dp"
android:layout_height="match_parent"
android:textCursorDrawable="@null"
android:background="@null"
android:hint="密码"
android:inputType="textPassword"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:singleLine="true"
android:textColor="@color/white"
android:textColorHint="@color/white"
@ -103,18 +126,15 @@
android:padding="8dp"
android:src="@mipmap/moudle_eye" />
</LinearLayout>
<!-- 横线 -->
<View
android:layout_width="250dp"
android:layout_height="0.3dp"
android:layout_gravity="center_horizontal"
android:background="#E5E5E5" />
<LinearLayout
android:layout_width="260dp"
android:layout_marginTop="25dp"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:orientation="horizontal">
android:layout_width="match_parent"
android:layout_marginTop="20dp"
android:layout_height="50dp"
android:orientation="horizontal"
android:background="@drawable/bg_login_input"
android:gravity="center_vertical"
android:paddingLeft="10dp"
android:paddingRight="10dp">
<View
android:layout_width="34dp"
@ -124,13 +144,13 @@
android:id="@+id/moudle_login_edt_code"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="34dp"
android:layout_height="match_parent"
android:textCursorDrawable="@null"
android:background="@null"
android:hint="验证码"
android:inputType="textPassword"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:singleLine="true"
android:textColor="@color/white"
android:textColorHint="@color/white"
@ -141,22 +161,13 @@
android:layout_height="35dp"
android:background="#666666" />
</LinearLayout>
<!-- 横线 -->
<View
android:layout_width="250dp"
android:layout_height="0.3dp"
android:layout_gravity="center_horizontal"
android:background="#E5E5E5" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="260dp"
android:layout_marginTop="15dp"
android:layout_width="match_parent"
android:layout_marginTop="20dp"
android:layout_height="40dp"
android:layout_gravity="center_horizontal"
android:orientation="horizontal">
<com.kyleduo.switchbutton.SwitchButton
@ -187,24 +198,28 @@
<Button
android:id="@+id/moudle_login_btn_login"
style="@style/wrap_layout_btn_blue"
android:layout_width="250dp"
android:layout_height="38dp"
android:layout_gravity="center_horizontal"
android:layout_marginTop="22dp"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginTop="50dp"
android:layout_marginLeft="0dp"
android:layout_marginRight="0dp"
android:text="登录"
android:textColor="@color/white"
android:textSize="15sp" />
android:textSize="18sp" />
<Button
android:id="@+id/moudle_login_btn_setting"
style="@style/wrap_layout_login"
android:layout_width="250dp"
android:layout_height="38dp"
android:layout_gravity="center_horizontal"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_marginTop="12dp"
android:layout_marginLeft="0dp"
android:layout_marginRight="0dp"
android:text="设置"
android:textColor="@color/white"
android:textSize="15sp" />
android:textSize="18sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"

View File

@ -6,151 +6,125 @@
android:layout_height="match_parent"
android:orientation="vertical"
android:background="#1368E1"
tools:context="com.sipai.jspatrol.setting.SettingActivity">
<View
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="0.7"/>
<LinearLayout
android:orientation="vertical"
android:layout_marginLeft="32dp"
android:layout_marginRight="32dp"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:layout_width="match_parent"
android:layout_height="42dp"
android:background="@drawable/bg_gray_top"
android:text="IP地址"
android:gravity="center"
android:textColor="@color/black"/>
<View
android:layout_width="wrap_content"
android:layout_height="30dp"
android:background="@color/white"/>
tools:context="com.sipai.jspatrol.setting.SettingActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg_white_bottom"
android:orientation="vertical">
<LinearLayout
android:layout_margin="30dp"
android:background="@drawable/bg_setting_card"
android:orientation="vertical"
android:padding="25dp">
<TextView
android:layout_width="match_parent"
android:layout_height="40dp"
android:orientation="horizontal">
android:layout_height="wrap_content"
android:text="服务器设置"
android:textColor="#333333"
android:textSize="20sp"
android:textStyle="bold"
android:gravity="center"
android:layout_marginBottom="25dp"/>
<!-- Plant IP -->
<TextView
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_marginLeft="15dp"
android:layout_height="wrap_content"
android:text="厂内IP"
android:textColor="#666666"
android:textSize="14sp"
android:gravity="center"
android:text="厂内IP"/>
android:layout_marginBottom="8dp"/>
<EditText
android:id="@+id/moudle_edit_ip_edt_in"
android:hint="厂内IP"
android:layout_width="match_parent"
android:layout_height="45dp"
android:background="@drawable/bg_setting_input"
android:hint="请输入厂内IP"
android:text="116.228.107.170:9190"
android:textColor="@color/black"
android:background="@null"
android:textSize="14sp"
android:paddingLeft="10dp"
android:gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
<View
android:layout_width="wrap_content"
android:layout_height="1dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:background="#e5e5e5"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp">
android:paddingLeft="12dp"
android:paddingRight="12dp"
android:singleLine="true"/>
<!-- Off-site IP -->
<TextView
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_marginLeft="15dp"
android:layout_height="wrap_content"
android:text="厂外IP"
android:textColor="#666666"
android:textSize="14sp"
android:gravity="center"
android:text="厂外IP"/>
android:layout_marginTop="15dp"
android:layout_marginBottom="8dp"/>
<EditText
android:id="@+id/moudle_edit_ip_edt_off"
android:hint="厂外IP"
android:textColor="@color/black"
android:layout_width="match_parent"
android:layout_height="45dp"
android:background="@drawable/bg_setting_input"
android:hint="请输入厂外IP"
android:text="116.228.107.170:9190"
android:background="@null"
android:textColor="@color/black"
android:textSize="14sp"
android:paddingLeft="10dp"
android:gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
<View
android:layout_width="wrap_content"
android:layout_height="1dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:background="#e5e5e5"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp">
android:paddingLeft="12dp"
android:paddingRight="12dp"
android:singleLine="true"/>
<!-- Device ID -->
<TextView
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_marginLeft="15dp"
android:layout_height="wrap_content"
android:text="设备ID"
android:textColor="#666666"
android:textSize="14sp"
android:gravity="center"
android:text="设备ID"/>
android:layout_marginTop="15dp"
android:layout_marginBottom="8dp"/>
<TextView
android:id="@+id/moudle_setting_tv_id"
android:layout_width="match_parent"
android:layout_height="45dp"
android:background="@drawable/bg_setting_input"
android:textColor="@color/black"
android:background="@null"
android:textIsSelectable="true"
android:textSize="14sp"
android:paddingLeft="10dp"
android:paddingLeft="12dp"
android:paddingRight="12dp"
android:gravity="center_vertical"
android:layout_width="wrap_content"
android:layout_height="match_parent" />
</LinearLayout>
<View
android:layout_width="wrap_content"
android:layout_height="1dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:background="#e5e5e5"/>
<View
android:layout_width="wrap_content"
android:layout_height="30dp"
android:background="@color/white"/>
android:textIsSelectable="true"/>
<!-- Buttons -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginBottom="7dp"
android:paddingLeft="6dp"
android:paddingRight="6dp"
android:orientation="horizontal">
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="30dp">
<Button
android:id="@+id/moudle_edit_ip_btn_no"
android:text="取消"
android:textColor="@color/black"
android:background="@drawable/bg_gray_bottom"
android:layout_margin="4dp"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="match_parent" />
android:layout_height="45dp"
android:layout_weight="1"
android:text="取消"
android:textColor="#333333"
android:textSize="16sp"
android:background="@drawable/bg_btn_cancel_round"
android:layout_marginRight="10dp"/>
<Button
android:id="@+id/moudle_edit_ip_btn_ok"
android:layout_width="0dp"
android:layout_height="45dp"
android:layout_weight="1"
android:text="完成"
android:textColor="@color/white"
android:background="@drawable/bg_blue_bottom"
android:layout_margin="4dp"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="match_parent" />
android:textSize="16sp"
android:background="@drawable/bg_layout_shape_btn_blue"
android:layout_marginLeft="10dp"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"/>
</LinearLayout>

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

View File

@ -1,5 +1,5 @@
<resources>
<string name="app_name">金山巡检</string>
<string name="app_name">碳谷绿湾</string>
<string name="appflag">JSYW</string>
<string name="app_flag">JSYW</string>
<string name="app_flag_patrol">JSYW</string>