/**
* Copyright 2014-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the license found in the
* LICENSE-examples file in the root directory of this source tree.
*/
package com.facebook.samples.litho;
import com.facebook.litho.Column;
import com.facebook.yoga.YogaAlign;
import com.facebook.yoga.YogaFlexDirection;
import android.content.Intent;
import android.view.View;
import com.facebook.litho.ClickEvent;
import com.facebook.litho.ComponentContext;
import com.facebook.litho.ComponentLayout;
import com.facebook.litho.annotations.FromEvent;
import com.facebook.litho.annotations.LayoutSpec;
import com.facebook.litho.annotations.OnCreateLayout;
import com.facebook.litho.annotations.OnEvent;
import com.facebook.litho.annotations.Prop;
import com.facebook.litho.widget.Text;
import static com.facebook.yoga.YogaEdge.ALL;
@LayoutSpec
public class DemoListItemComponentSpec {
@OnCreateLayout
static ComponentLayout onCreateLayout(
ComponentContext c,
@Prop final String name) {
return Column.create(c)
.paddingDip(ALL, 16)
.child(
Text.create(c)
.text(name)
.textSizeSp(18)
.build())
.clickHandler(DemoListItemComponent.onClick(c))
.build();
}
@OnEvent(ClickEvent.class)
static void onClick(
ComponentContext c,
@FromEvent View view,
@Prop final String name) {
final Intent intent = new Intent(c, DemoActivity.class);
intent.putExtra("demoName", name);
c.startActivity(intent);
}
}