Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
B
beyond-clouds-android
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
云深项目组
beyond-clouds-android
Commits
403e5269
Commit
403e5269
authored
Mar 27, 2020
by
Author name
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
3.27 博客预览完成
parent
663babb1
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
145 additions
and
28 deletions
+145
-28
app/src/main/AndroidManifest.xml
+3
-2
app/src/main/java/cn/yunliyunwai/beyondclouds/data/MarkdownPreview.java
+53
-0
app/src/main/java/cn/yunliyunwai/beyondclouds/ui/page/PreviewActivity.java
+51
-0
app/src/main/java/cn/yunliyunwai/beyondclouds/ui/page/PublishBlogActivity.java
+18
-0
app/src/main/res/layout/activity_preview.xml
+10
-19
app/src/main/res/layout/activity_publish_blog.xml
+10
-7
No files found.
app/src/main/AndroidManifest.xml
View file @
403e5269
...
...
@@ -33,14 +33,15 @@
<activity
android:name=
".ui.page.ProjectPreviewPart"
></activity>
<activity
android:name=
".ui.page.ProjectPreviewAll"
></activity>
<activity
android:name=
".ui.page.ProjectFileLink"
>
</activity>
<activity
android:name=
".ui.page.PublishBlogActivity"
>
<intent-filter>
<action
android:name=
"android.intent.action.MAIN"
/>
<category
android:name=
"android.intent.category.LAUNCHER"
/>
</intent-filter>
</activity>
<activity
android:name=
".ui.page.PublishBlogActivity"
>
</activity>
<activity
android:name=
".ui.page.ProjectsActivity"
></activity>
<activity
android:name=
".ui.page.FansActivity"
/>
...
...
app/src/main/java/cn/yunliyunwai/beyondclouds/data/MarkdownPreview.java
0 → 100644
View file @
403e5269
package
cn
.
yunliyunwai
.
beyondclouds
.
data
;
import
java.io.Serializable
;
/**
* @author GaoTong
* @date 2020/3/27 12:44
*/
public
class
MarkdownPreview
implements
Serializable
{
/**
* 文章标题
*/
private
String
title
;
/**
* 文章简介
*/
private
String
introduce
;
/**
* 文章内容
*/
private
String
content
;
public
MarkdownPreview
(
String
title
,
String
introduce
,
String
content
)
{
this
.
title
=
title
;
this
.
introduce
=
introduce
;
this
.
content
=
content
;
}
public
String
getTitle
()
{
return
title
;
}
public
void
setTitle
(
String
title
)
{
this
.
title
=
title
;
}
public
String
getIntroduce
()
{
return
introduce
;
}
public
void
setIntroduce
(
String
introduce
)
{
this
.
introduce
=
introduce
;
}
public
String
getContent
()
{
return
content
;
}
public
void
setContent
(
String
content
)
{
this
.
content
=
content
;
}
}
app/src/main/java/cn/yunliyunwai/beyondclouds/ui/page/PreviewActivity.java
View file @
403e5269
...
...
@@ -2,17 +2,68 @@ package cn.yunliyunwai.beyondclouds.ui.page;
import
androidx.appcompat.app.AppCompatActivity
;
import
android.content.Intent
;
import
android.graphics.Color
;
import
android.os.Bundle
;
import
android.text.Spanned
;
import
android.util.Log
;
import
android.view.View
;
import
android.widget.EditText
;
import
android.widget.TextView
;
import
cn.yunliyunwai.beyondclouds.data.MarkdownPreview
;
import
cn.yunliyunwai.beyondclouds.databinding.ActivityPreviewBinding
;
import
cn.yunliyunwai.beyondclouds.databinding.ActivityPublishBlogBinding
;
import
io.noties.markwon.Markwon
;
import
io.noties.markwon.ext.tables.TablePlugin
;
import
io.noties.markwon.ext.tables.TableTheme
;
public
class
PreviewActivity
extends
AppCompatActivity
{
private
ActivityPreviewBinding
binding
;
@Override
protected
void
onCreate
(
Bundle
savedInstanceState
)
{
super
.
onCreate
(
savedInstanceState
);
binding
=
ActivityPreviewBinding
.
inflate
(
getLayoutInflater
());
setContentView
(
binding
.
getRoot
());
Bundle
bundle
=
getIntent
().
getExtras
();
MarkdownPreview
markdownPreview
=
(
MarkdownPreview
)
bundle
.
getSerializable
(
"markdown"
);
//获取输入框中的文字
//标题
String
title
=
markdownPreview
.
getTitle
();
//简介
String
introduce
=
markdownPreview
.
getIntroduce
();
//内容
String
content
=
markdownPreview
.
getContent
();
//通过markwon解析器解析出markdown文本
final
TableTheme
tableTheme
=
TableTheme
.
emptyBuilder
()
.
tableBorderWidth
(
0
)
.
tableCellPadding
(
0
)
.
tableHeaderRowBackgroundColor
(
Color
.
WHITE
)
.
tableEvenRowBackgroundColor
(
Color
.
WHITE
)
.
tableOddRowBackgroundColor
(
Color
.
GRAY
)
.
build
();
Markwon
markwon
=
Markwon
.
builder
(
getApplicationContext
())
.
usePlugin
(
TablePlugin
.
create
(
tableTheme
))
.
build
();;
//显示标题
Spanned
markdownTitle
=
markwon
.
toMarkdown
(
title
);
binding
.
textBlogTitle
.
setText
(
markdownTitle
);
//显示简介
Spanned
markdownIntroduce
=
markwon
.
toMarkdown
(
introduce
);
binding
.
textBlogIntroFrame
.
setText
(
markdownIntroduce
);
//显示内容
Spanned
markdownContent
=
markwon
.
toMarkdown
(
content
);
binding
.
textBlogContent
.
setText
(
markdownContent
);
}
}
app/src/main/java/cn/yunliyunwai/beyondclouds/ui/page/PublishBlogActivity.java
View file @
403e5269
...
...
@@ -5,10 +5,12 @@ import androidx.annotation.RequiresApi;
import
androidx.appcompat.app.AppCompatActivity
;
import
androidx.fragment.app.Fragment
;
import
android.content.Intent
;
import
android.graphics.Color
;
import
android.graphics.drawable.Drawable
;
import
android.os.Build
;
import
android.os.Bundle
;
import
android.os.Parcelable
;
import
android.text.Spannable
;
import
android.text.SpannableString
;
import
android.text.style.ImageSpan
;
...
...
@@ -24,6 +26,7 @@ import java.util.concurrent.Executors;
import
cn.yunliyunwai.beyondclouds.R
;
import
cn.yunliyunwai.beyondclouds.adapter.PublishViewPagerAdapter
;
import
cn.yunliyunwai.beyondclouds.data.MarkdownPreview
;
import
cn.yunliyunwai.beyondclouds.databinding.ActivityPublishBlogBinding
;
import
cn.yunliyunwai.beyondclouds.ui.page.markdown.MarkdownButtonEnum
;
import
io.noties.markwon.AbstractMarkwonPlugin
;
...
...
@@ -98,6 +101,21 @@ public class PublishBlogActivity extends AppCompatActivity {
binding
.
editTextBlogContent
));
//跳转预览页面
binding
.
btnBlogPreview
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
v
)
{
MarkdownPreview
markdownPreview
=
new
MarkdownPreview
(
binding
.
editBlogTitle
.
getText
().
toString
(),
binding
.
introFrame
.
getText
().
toString
(),
binding
.
editTextBlogContent
.
getText
().
toString
());
Intent
intent
=
new
Intent
(
PublishBlogActivity
.
this
,
PreviewActivity
.
class
);
Bundle
bundle
=
new
Bundle
();
bundle
.
putSerializable
(
"markdown"
,
markdownPreview
);
intent
.
putExtras
(
bundle
);
startActivity
(
intent
);
}
});
}
//点击头部图片时改变图片颜色
@RequiresApi
(
api
=
Build
.
VERSION_CODES
.
LOLLIPOP
)
...
...
app/src/main/res/layout/activity_preview.xml
View file @
403e5269
...
...
@@ -14,16 +14,6 @@
app:layout_constraintStart_toStartOf=
"parent"
tools:layout_editor_absoluteX=
"0dp"
>
<TextView
android:layout_width=
"30dp"
android:layout_height=
"20dp"
android:text=
"发布"
android:textColor=
"@color/preview"
android:textSize=
"15sp"
android:layout_marginEnd=
"13dp"
android:layout_marginBottom=
"13dp"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
/>
<View
android:id=
"@+id/postDivider"
...
...
@@ -39,13 +29,13 @@
<ScrollView
android:id=
"@+id/scrollView2"
android:layout_width=
"0dp"
android:layout_height=
"
620dp
"
android:layout_height=
"
wrap_content
"
android:fadingEdge=
"vertical"
android:scrollbars=
"vertical"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@+id/constraintLayout1"
app:layout_constraintBottom_toTopOf=
"@id/constraintLayout3"
>
>
<androidx.constraintlayout.widget.ConstraintLayout
android:id=
"@+id/constraintLayout2"
...
...
@@ -56,8 +46,8 @@
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@+id/constraintLayout1"
>
<
EditText
android:id=
"@+id/t
iti
e"
<
TextView
android:id=
"@+id/t
ext_blog_titl
e"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"MarkDown简易用法"
...
...
@@ -75,7 +65,7 @@
android:textColor=
"@color/colorText"
android:textSize=
"10sp"
android:layout_marginTop=
"35dp"
app:layout_constraintTop_toTopOf=
"@id/t
iti
e"
app:layout_constraintTop_toTopOf=
"@id/t
ext_blog_titl
e"
app:layout_constraintStart_toStartOf=
"parent"
/>
<TextView
...
...
@@ -87,14 +77,14 @@
android:textSize=
"12sp"
android:paddingLeft=
"11dp"
android:paddingTop=
"4dp"
app:layout_constraintTop_toTopOf=
"@id/t
iti
e"
app:layout_constraintTop_toTopOf=
"@id/t
ext_blog_titl
e"
app:layout_constraintStart_toStartOf=
"parent"
/>
<TextView
android:id=
"@+id/introFrame"
android:id=
"@+id/
text_blog_
introFrame"
android:layout_width=
"match_parent"
android:layout_height=
"32dp"
android:text=
"MarkDown简易用法"
...
...
@@ -108,7 +98,8 @@
app:layout_constraintStart_toStartOf=
"parent"
/>
<TextView
android:layout_width=
"wrap_content"
android:id=
"@+id/text_blog_content"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:text=
"正文"
android:textColor=
"@color/colorText"
...
...
@@ -116,7 +107,7 @@
android:background=
"@null"
android:layout_marginTop=
"17dp"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/introFrame"
/>
app:layout_constraintTop_toBottomOf=
"@id/
text_blog_
introFrame"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
...
...
app/src/main/res/layout/activity_publish_blog.xml
View file @
403e5269
...
...
@@ -13,10 +13,12 @@
app:layout_constraintTop_toTopOf=
"parent"
tools:layout_editor_absoluteX=
"0dp"
>
<TextView
android:layout_width=
"30dp"
android:layout_height=
"19dp"
<Button
android:id=
"@+id/btn_blog_preview"
android:layout_width=
"60dp"
android:layout_height=
"40dp"
android:text=
"预览"
android:gravity=
"center"
android:textColor=
"@color/preview"
android:textSize=
"15sp"
android:layout_marginEnd=
"12dp"
...
...
@@ -56,9 +58,10 @@
app:layout_constraintTop_toBottomOf=
"@+id/constraintLayout1"
>
<EditText
android:id=
"@+id/edit_blog_title"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:
tex
t=
"文章标题"
android:
hin
t=
"文章标题"
android:textColor=
"@color/colorGray"
android:textSize=
"20sp"
android:layout_marginTop=
"20dp"
...
...
@@ -70,7 +73,7 @@
android:id=
"@+id/introFrame"
android:layout_width=
"match_parent"
android:layout_height=
"43dp"
android:
tex
t=
"请输入文章简介"
android:
hin
t=
"请输入文章简介"
android:textColor=
"@color/colorText"
android:textSize=
"13sp"
android:paddingLeft=
"15dp"
...
...
@@ -82,9 +85,9 @@
<EditText
android:id=
"@+id/edit_text_blog_content"
android:layout_width=
"
0dp
"
android:layout_width=
"
match_parent
"
android:layout_height=
"wrap_content"
android:
tex
t=
"正文"
android:
hin
t=
"正文"
android:textColor=
"@color/colorText"
android:textSize=
"13sp"
android:background=
"@null"
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment