Skip to content

Commit 7812d59

Browse files
committed
Finished FrameLayout.LayoutParams
1 parent 47c05dd commit 7812d59

File tree

1 file changed

+117
-0
lines changed

1 file changed

+117
-0
lines changed
Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
//
2+
// WidgetFragmentLayoutLayoutParams.swift
3+
// Android
4+
//
5+
// Created by Marco Estrella on 7/18/18.
6+
//
7+
8+
import java_swift
9+
import java_lang
10+
import JNI
11+
12+
public extension AndroidWidgetFragmentLayout {
13+
14+
public typealias FLayoutParams = AndroidFrameLayoutLayoutParams
15+
}
16+
17+
open class AndroidFrameLayoutLayoutParams: Android.View.ViewGroup.MarginLayoutParams {
18+
19+
// Creates a new set of layout parameters with the specified width, height and weight.
20+
public convenience init(width: Int, height: Int, gravity: Int){
21+
22+
var __locals = [jobject]()
23+
24+
var __args = [jvalue]( repeating: jvalue(), count: 3 )
25+
__args[0] = jvalue(i: jint(width))
26+
__args[1] = jvalue(i: jint(height))
27+
__args[2] = jvalue(i: jint(gravity))
28+
29+
let __object = JNIMethod.NewObject(
30+
className: LayoutParamsJNICache.className,
31+
classCache: &LayoutParamsJNICache.jniClass,
32+
methodSig: "(III)V",
33+
methodCache: &LayoutParamsJNICache.MethodID.newMethod2,
34+
args: &__args,
35+
locals: &__locals )
36+
37+
self.init( javaObject: __object )
38+
39+
JNI.DeleteLocalRef( __object )
40+
}
41+
42+
// Copy constructor.
43+
public convenience init(source: Android.Widget.FragmentLayout.FLayoutParams){
44+
45+
var __locals = [jobject]()
46+
47+
var __args = [jvalue]( repeating: jvalue(), count: 1 )
48+
__args[0] = JNIType.toJava(value: source, locals: &__locals)
49+
50+
let __object = JNIMethod.NewObject(
51+
className: LayoutParamsJNICache.className,
52+
classCache: &LayoutParamsJNICache.jniClass,
53+
methodSig: "(Landroid/widget/FrameLayout$LayoutParams;)V",
54+
methodCache: &LayoutParamsJNICache.MethodID.newMethod1,
55+
args: &__args,
56+
locals: &__locals )
57+
58+
self.init( javaObject: __object )
59+
60+
JNI.DeleteLocalRef( __object )
61+
}
62+
63+
public static var UNSPECIFIED_GRAVITY: Int {
64+
65+
get {
66+
67+
let __value = JNIField.GetStaticIntField(
68+
fieldName: "UNSPECIFIED_GRAVITY",
69+
fieldType: "I",
70+
fieldCache: &LayoutParamsJNICache.FieldID.UNSPECIFIED_GRAVITY,
71+
className: LayoutParamsJNICache.className,
72+
classCache: &LayoutParamsJNICache.jniClass )
73+
74+
return Int(__value)
75+
}
76+
}
77+
78+
public var gravity: Int {
79+
get {
80+
let __value = JNIField.GetIntField(fieldName: "gravity",
81+
fieldType: "I",
82+
fieldCache: &LayoutParamsJNICache.FieldID.gravity,
83+
object: javaObject)
84+
return Int(__value)
85+
}
86+
}
87+
}
88+
89+
// MARK: - JNICache
90+
91+
internal extension AndroidFrameLayoutLayoutParams {
92+
93+
/// JNI Cache
94+
struct LayoutParamsJNICache {
95+
96+
/// JNI Java class signature
97+
static let classSignature = Android.Widget.className(["FragmentLayout$LayoutParams"])
98+
99+
/// JNI Java class name
100+
static let className = classSignature.rawValue
101+
102+
/// JNI Java class
103+
static var jniClass: jclass?
104+
105+
struct FieldID {
106+
static var UNSPECIFIED_GRAVITY: jfieldID?
107+
static var gravity: jfieldID?
108+
}
109+
110+
/// JNI Method ID cache
111+
struct MethodID {
112+
113+
static var newMethod1: jmethodID?
114+
static var newMethod2: jmethodID?
115+
}
116+
}
117+
}

0 commit comments

Comments
 (0)