Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 18 additions & 5 deletions src/main/resources/templates/ActivityTemplate.txt
Original file line number Diff line number Diff line change
@@ -1,15 +1,28 @@
package $PACKAGE$

import androidx.lifecycle.LifecycleOwner
import kr.co.finda.finda.R
import kr.co.finda.finda.databinding.Activity$NAME$Binding
import kr.co.finda.finda.ui.base.BaseActivity
import kr.co.finda.finda.ui.base.v2.BaseActivityV2
import org.koin.androidx.viewmodel.ext.android.viewModel

class $NAME$Activity : BaseActivity<Activity$NAME$Binding, $NAME$ViewModel>(
R.layout.$LAYOUT_NAME$,
$NAME$ViewModel::class.java

class $NAME$Activity : BaseActivityV2<Activity$NAME$Binding, $NAME$ViewModel>(
R.layout.$LAYOUT_NAME$
) {

override fun setBindingVariables() {
override val viewModel: $NAME$ViewModel by viewModel()

override fun onInitialize(lifecycleOwner: LifecycleOwner) {
super.onInitialize(lifecycleOwner)
binding.viewModel = viewModel
}

override fun setupUiComponent() {

}

override fun observeLiveData() {

}
}
26 changes: 19 additions & 7 deletions src/main/resources/templates/FragmentTemplate.txt
Original file line number Diff line number Diff line change
@@ -1,15 +1,27 @@
package $PACKAGE$

import androidx.lifecycle.LifecycleOwner
import kr.co.finda.finda.R
import kr.co.finda.finda.databinding.Fragment$NAME$Binding
import kr.co.finda.finda.ui.base.BaseFragment
import kr.co.finda.finda.ui.base.v2.BaseFragmentV2
import org.koin.androidx.viewmodel.ext.android.sharedViewModel

class $NAME$Fragment : BaseFragment<Fragment$NAME$Binding, $NAME$ViewModel>(
R.layout.$LAYOUT_NAME$,
$NAME$ViewModel::class.java
class $NAME$Fragment : BaseFragment<Fragment$NAME$Binding>(
R.layout.$LAYOUT_NAME$
) {

override fun setBindingVariables() {
binding.viewModel = viewModel
}
override val viewModel: $NAME$ViewModel by sharedViewModel()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이 부분같은 경우엔 sharedViewModel를 사용하지 않는 케이스일 경우가 더 많을 것 같아서,
그냥 비워둔채로 나두어도 괜찮을 것 같습니다.
템플릿으론 생성만 해주고, 이런 부분은 상세 구현쪽이라고 생각하는 것이 좋을 것 같습니다.
Activity같은 경우는 거의 고정이라 잘 모르겠지만, fragment는 비우는 것이 더 좋을 것 같습니다.

Copy link
Member Author

@KRMKGOLD KRMKGOLD Aug 4, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

근데 Fragment으로 설정하고 생성하면 일단 ViewModel도 같이 생성하는 거 아닌가요
일단 기본적으로 템플릿인데 ViewModel 파일은 생성되고, sharedViewModel() 과 import 문 등을 직접 추가해야 되는 경우는 오히려 발생하면 안된다고 생각합니다. 차라리 지우는 형태로 가는 것이 맞다고 봐요.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

그러네요 그럼 유지하는 것으로 approve 하겠습니다


override fun onInitialize(lifecycleOwner: LifecycleOwner) {
super.onInitialize(lifecycleOwner)
binding.viewModel = viewModel
}

override fun setupUiComponent() {

}

override fun observeLiveData() {

}
}
2 changes: 1 addition & 1 deletion src/main/resources/templates/LayoutTemplate.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
type="$VM_PACKAGE$" />
</data>

<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">

Expand Down
4 changes: 2 additions & 2 deletions src/main/resources/templates/ViewModelTemplate.txt
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package $PACKAGE$

import kr.co.finda.finda.coreComponent.ui.base.BaseViewModel
import kr.co.finda.finda.ui.base.v2.BaseViewModelV2

class $NAME$ViewModel : BaseViewModel() {
class $NAME$ViewModel : BaseViewModelV2() {


}